00:00
00:00
revolverroach
Still Alive

Age 40, Male

Game Developer

Philippines

Joined on 3/25/07

Level:
5
Exp Points:
184 / 280
Exp Rank:
> 100,000
Vote Power:
4.11 votes
Rank:
Civilian
Global Rank:
> 100,000
Blams:
0
Saves:
2
B/P Bonus:
0%
Whistle:
Normal
Trophies:
2
Medals:
613

MR2: Bugs, bugs and more bugs.

Posted by revolverroach - February 2nd, 2012


As usual, I'm posting here to show that I am, indeed, still alive. Also, I am posting because at the moment I am incredibly frustrated with ActionScript.

WARNING: Programmer rant ahead.

MR2 is in the testing and bug fixing part of production. The small group of people I have testing the game have been doing an excellent job breaking it and exposing all the bugs. 80% of the bugs are related to saving and loading data and I'm finding that these bugs are the hardest to catch.

Here's an example of an easy fix. Let's say that out of 10 testers, 5 find the same bug. I can compare their 5 game states, see what conditions they share, and from that I can deduce what the bug is. This is about a 2-3 hour process of coding and retesting. In the grand scheme of things, 3 hours is not a lot of time.

Now an example of a hard fix. Let's say that out of the same 10 testers, only 1 guy experienced a bug. With just one error log to work with, I have no point of comparison. Worst case scenario: he can't re-create the bug. I have to go over each of his save states until I find the one where the error appeared. This can take hours or days, depending on how obvious the problem is.

And it's not like I can write it off as a fluke. 1 out of 10 is still 10%. In the first game I wrote off the zombie hands bug. When people started complaining about it, I heard loud and clear. But try as I might, I could not figure out what was causing it. If I can't recreate the bug then I can't fix it. Simple as that. To this day that bug is still in there and people still email me about it. I don't know whether that's my failing as a programmer or just one of those annoying quirks of Flash. Either way, debugging sucks.

If you have read any articles on programming with SharedObjects please point me to them. I have spent hundreds of hours reading through forums and tutorials and found very few to be helpful.

It seems that the only thing people can agree upon is that SharedObjects are a clunky, ugly, unreliable way to save data. It's fine for simple games. A game with level select only needs to save the number of levels you've unlocked and maybe a rank/high score for each level. Examples of this are Super Meat Boy and most tower defense games. A game with progression (a.k.a. levelling) needs to save which skills you've unlocked/bought and how much experience/money you've earned. Examples of this are Toss the Turtle and Sonny.

Those examples I gave may over-simplify, but the point is that as long as you keep your data to a minimum, SharedObject works fine. If you all your tracking is a player's progress and unlocks, SharedObject works fine. Once you start allowing a player to customize, that's when the system starts breaking down.

To illustrate, MR1 saves the following info.

1. Equipment of each character
- Headgear
- Weapon 1
- Weapon 2
- Armor
2. Map Exploration
- 1 Boolean (true/false) for each of the 200+ rooms
- 1 Number of the room of last save location
3. Uncollected Items
- 1 Array (up to 3 items) for each room with a locker
4. Collected Items
- 1 Array for Headgear
- 1 Array for Weapons
- 1 Array for Armor
- Number of Flashbangs
- Number of Smoke Grenades
- Number of Medkits
- Saved PID Energy
5. Special events. 1 Boolean (true/false) for each:
- Savior Boss
- MAG Zombie Boss
- Tricky Boss
- Final Boss

For a flash game, that's a pretty long list of save data. The upside: I was able to make a game with exploration and character customization. According to emails and reviews, those were the two best aspects of the game. The downside: I tended to lose track of data. Even with a ton of error checks built into the program, sometimes I'd just miss things.

For example, the zombie hands bug happens when the game can't read your Weapon1 save data. It defaults to '0' which in the game engine is the number assigned to zombie hands. That's as far as I got on that bug. I don't know why it screwed up only Weapon1 and no other equipment. Suffice to say, the more complex you make a game, the more likely things will go wrong.

There are some very good, complex flash games out there with character stats, skill trees, inventory, randomly generated dungeons, etc. Of course most of them bypass the whole SharedObject issue by using a SQL database. I'd love to do the same but that requires you to use some site's API (ex:Mochi, ArmorGames) which IMO are poorly documented. I looked into the NG API but there's almost no info on that.

Bah. Grumble. Blargh. It's just frustrating all around.

So yeah, the final word is that MR2 is still alive, mostly done, but incredibly broken. Also, I want to announce that once the game is in a more stable state, I'll do some sort of closed beta test. I'll slowly filter people in from NG forums because honestly, I've been working on this game for so long I've lost perspective. I have no idea if the public will see it the same way I do.

Peace out,
- Revolverroach

P.S. Have you guys played Abobo's Big Adventure? That game took me on a trip down memory lane. Too bad the non-NES generation won't understand why that game is so awesome. Nostalgia is one of those things that you can't pass on.

MR2: Bugs, bugs and more bugs.


Comments

finaly some news!
i now you are working alot but you could launch the beta in newgrounds, ask people to tell you about the bugs AND then the full game with bugs fixed, ONLY if its not a lot of work(becose i dont now if its alot of work or a simple thing)
PS: sorry for bad english, i speak spanish

MADNESS RETALIATION 2
Y U SO MANY BUGS?!

It's awesome to see it's nearly finished ! I've been waiting for it since long now !
Yikes for the buggy part though... Well, I'm sure time and patience will overcome this.
Carry on ! I shall not let you abandon the project ! So good luck and do your best !

Oh, and if you need more people for beta-testing, you can email-me at squitcher@hotmail.fr ! I would be more than happy to help you.

I have no idea how you do beta testing...but if I can do it without the risk of anything happening to my computer, I would be more than happy enough to do it. Just PM me and I'll give you my e-mail. :P

I understand ur feelings for the NES, man. good work on MR2, can't wait for the final product.

Glad to see you're posting updates on MR2! Also, I knew you were still alive because of the medals you were getting on Abobo's Big Adventure. Me and my friend had a blast playing that, especially on the last level.

Holy bugs, did I read the whole post? I don't have any much of helpfull advices, but lautalocoses advice about launching the beta version on Newgrounds is a pretty good idea, beacuse many people on NG likes finding bugs in every game. The only advice I have, is to find some exterminators and squash those bugs. ( it kinda means the same, does it? ) Giving you best of luck to complete MR2 once and for all!

Hi there man, I just signed up cuz I see you have a problem with coding and I really loved MR1 so here to help if I can

I'm not an expert on action script but I know some other languages so I hope my knowledge can help

First: Zombie hands
id = 0
0 = null
you are getting the bug cuz its saving a null/not accepted info, you might be changing it for a sring, you add a "," a space, a character or a float into an int

how to know where it comes?
ok, change weapon 1 to a string, it will work fine with the code and at some point it will save something weird and then you can search for it

about the save files I'm not sure how you are working it out but if you plan on using mysql you can use a conect to an external non "localhost" database such as godaddy's (I know sadly its not free and I havent found 1 free external mysql DB)

<a href="http://www.actionscript.org/resources/articles/53/1/Integrating-Flash-and-mySQL/Page1.html">http://www.actionscript.org/resources/articles /53/1/Integrating-Flash-and-mySQL/Page1.html</a>

on the other side I searched a little for an order like "explode()" from php for actionscript and I found split()
so you can save all your info in a string for example:

1. Equipment of each character
- Headgear
- Weapon 1
- Weapon 2
- Armor

"1,2,1,1" (the 4 id's) then you can split the string into an array and you will have
char1[0] = headgear id
char1[1] = weapon 1 id

this way you can save id's and booleans and you will only have to know the place in the array for each thing

hope this helps you and if you need anything I will come to read often

thanks for making time for great games and sorry if I have poor english

Damnnn I would help you!!!

if i don't understand: your specific problems is the save bug
why don't you make an download version without saving stuff in it ?
either way whu don't open your game on profesional testing forum for your game

but anyway it could be a save problems i'm sure i will finished it in one sessions! :) Good luck i'm sorry to can't do anythings in it and keep your spirit up! :D

Two Epic Madness games around the same time (Krinkels/Swain)? 2012 is going to be great.

i saved in one and it dint save

as usual i comment here to let you know that some ppl still awaits your game
and hope it would be truly awesome..

hey roach, good to see your still alive. just wanted to say i LOVED MR1 and i would really like to beta test for you if i could.

Man trust me I would help in a heartbeat if I could, I set up three accounts just to keep track of what the hells going on with the game, and to be quite honest I havent seen this much hipe about madness anything on newgrounds since Krinles made M.C 10, so take all the time in the world if you have to..... and hit me up if you ever need a helping hand for searching for programs or if you need beta testers cuz I've got plenty of people who would help with testing or programing or debuging or whatever. Have a great productive day my friend, later.

Good luck. I seriously wanna see 2 come out some day. As we speak I'm playing through 1 again on my nww laptop.

I feel your pain, bro. Fighter Factory for MUGEN is a BITCH to make a character from scratch with! I made a beta of a character once, and it DIDN'T APPEAR ONSCREEN. What windows do you run, by the way? I can't find an efficient flash product.

Project Nexus was finished before Retaliation 2, and you even started before Nexus!

man come on and finish madness retaliation!

It's almost been a year since your 2nd release date...

Well guys, he is working alone, and I think it's a very HUGE game.

More Results