Pre-alpha bug list

If you find any, please report them below. Oh, and to not make it a mess, search for a submitted bug before you submit your own, otherwise the comment section might go BAM.

Also, I’ll be updating each bug’s status, so be sure to check this post regularly for updates.

Client bugs:

  • Console capturing keys after endround if it’s open while it triggers. (FIXED, waiting for patch)
  • Chat window isn’t accessible during endround. (FIXED, waiting for patch)
  • Bullets sometimes pass through own player. (possibly FIXED, waiting for patch + further testing)
  • Sometimes bullets register client-side but not server-side. (this may be due to lag and not a bug itself, but I tweaked it (a lot), so waiting for patch + further testing)

Server bugs:

  • Nicknames are bugged. (FIXED, patch 1 here)

It’s here.

Update: I will no longer give support to this version of the game, as a new one is in the works.

Ladies and gentlemen… Killplex Pre-alpha Version 1.

After a few months in development, I finally built a (hopefully) stable, pre-alpha version for public testing. May I remind you that this version is pretty much a work-in-progress, and that lots of things are going to be changed in the road to the final version.

You will need .NET Framework 4.0 and the XNA Redistributable 4.0 installed on your computer, otherwise the game will not run.

You can download the pre-alpha version 1 here [link removed] (~ 630KB).

You can also download the server patch for the names bug here [link removed] (~ 26KB). You just need to overwrite the contents of the original folder with the contents in that zip.

Also, here’s a list of useful links (this will be updated regularly):

Continue reading

Happy new year!

I sincerely hope 2012 is the year everything goes right for all of you. Because, let’s face it, 2011 is so last year.

I’m working hard on the pre-alpha for Killplex. I’m finishing up some stuff, and then I’ll be launching it for all of you to help me test it. Oh, and I dropped a few stuff from the roadmap, perhaps because I didn’t really think it would fit with the overall tone I want to convey with this game.

So, I’ll be doing the console (for command inputs to control certain gamevars, and to control the server itself) and some tweaks to my bullet damage model (making it more “distance-based” instead of completely random calculations).

I’ll be including the server and the (incomplete) mapper, and I won’t provide a launcher for the time being. I won’t officially support the mapper, its inclusion will be mainly for feedback… I already have plans to revamp it completely (and it will render these pre-alpha maps incompatible). Until then, I’m going to be focusing more on the core game itself.

So yeah, that’s my first update for 2012. I’ll be posting more info soon. :)

I won’t be able to make it…

Exhaustion won. I’m too swamped to release a pre-alpha before the end of 2011. :(

Hold on… Wait! Don’t be sad! 2012 is right next door. And I think I’m going to have some time to rest next week. So guess what? I’ll try to release it then. Anywhere between the 2nd and 8th.

But… what’s holding up the pre-alpha? What could possibly be missing‽, you ask. Well, a bunch of stuff:

  • Power plates: these handy fellows will give you free stuff when you step on them. They’re not vending machines, I actually don’t even have a better name for them yet. I haven’t yet decided what will spawn there, but I’m thinking something like Health packs, you know, little boosts.
  • A console: you know where, in certain games, you are able to open up a nice window and you type gibberish in it? You know, stuff like “drawfps 1” or “cl_cmdrate 33” or “devour_your_mom 69”, stuff like that? I intend to implement that, and I have several reasons for it, but I’m going to save them for another post.
  • Server optimizations: I still have a bunch of them to do before I release the pre-alpha.
  • Launcher: at the moment, the only way to launch the game is to edit the config.cfg with your nickname, screen resolution, and server address (IP and port), and then run the exe. I intend to create a launcher with a server browser (this may not be ready in time for the alpha), and at least a decent way to change graphical options (at the moment, only the screen resolution is changeable, and I didn’t forget the fullscreen option) without resorting to editing the config.

What is the point of this pre-alpha?, you ask again. Well, I have several reasons, but mainly server and client stability with 4+ people, and general feedback to improve the game. This pre-alpha is a way for me to test several stuff that I am unable to test on my own. And mainly for motivation, which I seem to lose quite often, probably because I’m just like that. :)

Expect more news in the next few days.

A new video…

I’m doing optimizations to the general code, and next is server changes as well… I still intend to release a pre-alpha version so that I can test it in a wider scale, but for now, I leave you with a video, while I don’t write a much more extensive post.

Slow coding is slow

I haven’t been coding Killplex due to the simple fact that I reached an area of boredom. I’m right now doing a sound engine, I have most of the sound library, but I just can’t figure out how to make it blend with the gameplay. Also, I have to do graphics, more objective-based modes, maps and so on. That is just overwhelming to think of.

I want to do positional audio… shots from your left actually come out of the left side, traveling bullets also swoosh from one side to the other, making a good audio experience for a 2D game. The thing is, I don’t know anything about XACT, and the idea of converting sounds from map positions (for example player: 200,400; shot: 100, 400) to screen decimals (for example player: 0,0; bullet: -1,0) in runtime without losing performance actually frightens me.

But… last weekend I had a LAN, where I put three other people playtesting with me. The experience was none other than exciting, watching people other than myself actually having fun with something I did. It motivated me to go and release this game.

That playtesting also brought me some ideas for tweaks and improvements. For example, I added text to the Health and Ammo bars (it now shows the values). I bound the ENTER key to the Spawn action when in the menu. And now I’m in a phase where I should rewrite most of the server processing code, in order to make it more modular, and to be able to make an API. This will make it possible (and easier) to build a RCON tool in order to manage the game, a.k.a. kick/ban players, change maps at will, etc.

It will also make feature extensibility easier, so that when new gamemodes are planned, I’d be able to just write the code and BAM! Of course, it’s never that easy, due to client changes, but you get the point.

I will change the network packaging today. Instead of sending movement and stats in the same packet with the same reliability, I will separate them. Movement will go through one channel with unreliable (but ordered) delivery every 60 times per second (this is adjustable in the server config), while stats will be processed independently (I’ll make a variable for it, possibly 4 times per second?). This way, I can make stats messages more reliable (through some techniques), improve performance, and will make them extensible enough to implement other messages into that one.

I will also revamp the methods to allow for better end-round behaviour… right now, it’s currently internally named a “server restart” instead of a “map transition”, disconnecting all players and resetting everything. This will lead the client to check if the flag “endRound” is activated, and if so, it will try to reconnect to the server when it gets booted (and accepts connections). This leads to some bugs, like infinite loading (the client doesn’t disconnect properly), so I’m changing it up. I’ll make it so it loads the map while it’s in the end-round screen, and then just changing player states and loading up the map on the client’s end. That seems robust enough. Leave me tips in the comments, though.

So that’s an update for you. I will try and stay active, and possibly release an alpha test by the end of the year. Does that sound nice?