Blob Wars : Attrition

Blob Wars : Attrition

Postby StephenJSweeney » 04 Feb 2018, 11:07

I've started work on porting the Android-only Blob Wars : Attrition to C. The code is being uploaded to GitHub as I go along:

https://github.com/stephenjsweeney/blobwarsAttrition

I decided to do so after seeing some gamers lamenting that the game was only available on Android. I figured I'd give a desktop port a go (I could've simply created a Java port, but I didn't like the reliance of Java).

So far, things are going well. I'm about to hit v0.1, with some of the levels loading and the gameplay partially complete. Going from Java to C is quite a challenge; as Java is OO and C is procedural, I've had to make some heavy use of function pointers. I'm also having to translate the XML into JSON, and then manually fix issues resulting from that. Still, it's all working out quite well so far. With any luck, I'll hit v1.0 within few months.

v0.1 screenshot:

Image

There's also a YouTube video here:

https://www.youtube.com/watch?v=AoJTiLQwPqw

One caveat to this port is that the data files (the maps and mission definitions) will remain commercial. It'll be available to purchase for about $2 or so.
User avatar
StephenJSweeney
 
Posts: 50
Joined: 13 Nov 2015, 18:27

Re: Blob Wars : Attrition

Postby Lyberta » 04 Feb 2018, 13:38

Why not C++?
Some crazy person on the Internet.
User avatar
Lyberta
 
Posts: 376
Joined: 19 Jun 2013, 10:45

Re: Blob Wars : Attrition

Postby StephenJSweeney » 04 Feb 2018, 14:58

I've always had great fun with C++, and usually end up writing some horrible mishmash of C and C++. I did initially start doing it in pure C++, but got all confused with the class headers, etc., so I decided to just stick with what I knew and did it in C.
User avatar
StephenJSweeney
 
Posts: 50
Joined: 13 Nov 2015, 18:27

Re: Blob Wars : Attrition

Postby onpon4 » 04 Feb 2018, 16:11

C is way better than C++. That's why I've been at work on and off converting Starfighter to C. :P
User avatar
onpon4
 
Posts: 440
Joined: 13 Mar 2014, 18:38

Re: Blob Wars : Attrition

Postby StephenJSweeney » 05 Feb 2018, 09:41

I should do that with the original Metal Blob Solid at some point. It's the same hideous mishmash. I don't dare go near Blob And Conquer. Might be better to just rewrite that game from the ground up! ;)
User avatar
StephenJSweeney
 
Posts: 50
Joined: 13 Nov 2015, 18:27

Re: Blob Wars : Attrition

Postby Lyberta » 06 Feb 2018, 14:55

StephenJSweeney {l Wrote}:but got all confused with the class headers


Maybe you should try reading a good C++ book such as The C++ Programming Language by Bjarne Stroustroup. C++ right now is so much ahead of C. It has multithreading in standard library, Networking TS is almost done so you won't ever need to mess with OS-specific socket API. 2d graphics TS is in the works and there are talks about Audio TS. If all goes well, you would be able to write a whole game engine using only standard library in 20 years.
Some crazy person on the Internet.
User avatar
Lyberta
 
Posts: 376
Joined: 19 Jun 2013, 10:45

Re: Blob Wars : Attrition

Postby StephenJSweeney » 13 Feb 2018, 09:33

I completed work on v0.2 this past weekend, and have commenced v0.3. All the beach levels now load and can be played, so I'm onto the greenlands levels.

Image

There have been relatively few hiccups along the way, which has surprised me! I've still got to do things like loading and saving, control config, the main mission hub, and title screen, but I feel that the hardest parts of porting the game are now behind me. The longest part will be play testing. Like Metal Blob Solid, Attrition is non-linear, except that in this case, you also carry excess keys with you between levels. You might encounter a gold door on one level, for example, but have no means to open it. A later level might finish with you having a spare gold key, allowing you to return to the blocked off area. This was all fine and dandy in the Android version, so since the data is the same, there should be no issues there, either.

Loading and saving progress properly with start in v0.4

There are more screenshots here:

https://github.com/stephenjsweeney/blob ... creenshots
User avatar
StephenJSweeney
 
Posts: 50
Joined: 13 Nov 2015, 18:27

Re: Blob Wars : Attrition

Postby StephenJSweeney » 24 Feb 2018, 17:12

The game is now up to v0.6. Lots of stuff has been added, including one of the boss fights. I made a video:


youtu.be/Gm-_STTrms0

I've been having fun eliminating some of the bugs and crashes, but gdb and valgrind make things very easy. Hopefully, the worst crashes are now behind me!
User avatar
StephenJSweeney
 
Posts: 50
Joined: 13 Nov 2015, 18:27

Re: Blob Wars : Attrition

Postby GunChleoc » 26 Feb 2018, 14:07

Looking good :)

Since you're talking tools, do you know about AddressSanitizer? I've been working with it a lot recently, and it won't slow down your system much.
User avatar
GunChleoc
 
Posts: 312
Joined: 20 Sep 2012, 22:45

Re: Blob Wars : Attrition

Postby StephenJSweeney » 27 Feb 2018, 09:07

Oh! That looks like a good tool. Thanks for pointing it out. I'll be sure to use it later on!
User avatar
StephenJSweeney
 
Posts: 50
Joined: 13 Nov 2015, 18:27

Re: Blob Wars : Attrition

Postby StephenJSweeney » 11 Mar 2018, 13:14

For anyone interested (and is happy to compile the github stuff from source), there is some demo data here:

www.stephenjsweeney.com/downloads/blobW ... ata.tar.gz

It contains three levels. Hasn't been vigoriously tested, but should give you an idea of what to expect. What you'll want to do is download that archive, extract it, and then put the data folder alongside the gfx, sound, and music folders. Then, run the game.

It will start in the hub section. You can use the mouse to move the cursor (or WSAD). Press Escape to get to the menu, and use the arrow keys or WSAD to navigate. Press Return or Space to select an option. You can configure things like controls, sound / music volume, etc. in the options screen.
User avatar
StephenJSweeney
 
Posts: 50
Joined: 13 Nov 2015, 18:27

Re: Blob Wars : Attrition

Postby StephenJSweeney » 18 Mar 2018, 17:58

Another video from v0.7 of the game. A montage of levels this time around:


youtu.be/aW6YqUzoz5Q
User avatar
StephenJSweeney
 
Posts: 50
Joined: 13 Nov 2015, 18:27

Re: Blob Wars : Attrition

Postby StephenJSweeney » 25 Apr 2018, 07:48

Probably not 100% relevant to these forums, given that the data is commercial, but Blob Wars : Attrition is now complete (sans some outstanding bugs):

https://github.com/stephenjsweeney/blobwarsAttrition

Anyone interested can grab the data, along with pre-built binaries, at Itch.io:

https://parallelrealities.itch.io/blob-wars-attrition
User avatar
StephenJSweeney
 
Posts: 50
Joined: 13 Nov 2015, 18:27

Who is online

Users browsing this forum: Google [Bot] and 1 guest