Sign in to follow this  
  • entries
    109
  • comments
    378
  • views
    127844

God hates me

Sign in to follow this  
Raduprv

111 views

This morning, I almost finished making the seeds in Barren Moon germinate (ie. destroy the seed, add a new plant). So, I felt like programming, and I finished the functions, plus add some test definition files to see if/how it is working.
Then all hell broke loose. I started the server, and when updating the seeds status, it crashed.
Not a big deal, I had to write a lot of function and today was the first time I tested them, and I didn't expect them to work flawlesly. So I fired up Insight (a GDB GUI), and looked at some stuff. Well, the first thing was, I mispelled the definition file name. Ok, corrected it, started again. This tie it didn't crash, but didn't do what was expected. After further analysis, I realized that, since we were using a new system to load configuration files (a home built system by one of the devs), I did something wrong, using the wrong name for a tag.
Crashed again! WTF?
Then I noticed that there might be a small discrepancy between the client and server map format. After investigating for 2 hours, I realized that there was no discrepancy in the map format, but while loading the maps on the server I had to do some extra work (initialize some empty variables at the end of an array, that hold the 3d objects).
I fixed that, and while I was at it fixed some unrelated bugs, then tried to make it work again. This time, the server DID add the new plant, from the seed, because I was doing a step by step debugging on theserver, but the client did NOT see the new plant.
So I had to recompile the whole client in debug mode (takes like 5 minutes), placed a breakpoint on ADD_3D_OBJECT message from the server, and nothing happened. GRR...
I realized that I had to delete some data files from the server, because the server was thinking that the plants are already there. Ok, I did that, started again, and this time the breakpoint DID work. Only that the next step (in the debugger) threw me in the wrong function! WTF? WTFF? After some careful inspection, I realized that, for some reason, the sector.c file on the client had some characters that confused Insight and made it see additional lines of source. So I had to edit all those characters, that were normally invisible (probably a double cr or nl), start up the debugger again, only to notice that I didn't remove ALL the characters. Repeat this last step a few times, until I finally managed to make it work, and I was able to debug that function. It turned out that I calculated the wrong Z value for the ground, on the server, and the flower was underground, obscured by the tiles.
I fixed that problem, started the server and the client, typed, for the 100th time the admin command to speed up the seeds growing, so they germinate ASAP, and surprise, didn't work, again.
So here we go again, debugging the server, and the client, only to see that everything WAS going as it was supposed to go. 10 minutes and 100 profanities and blasphemies later, I realized that the flower DID appear, but:
1. It was farther than I expected.
2. it was the smallest flower in the whole game (I inadvertently chose a flower that was too small, and I didn't know that)
3. It was in the shadow of a tree, so it looked more like a spot on the ground.
4. Was obscured by a test door (only a door, not a house) that I placed there today, to test some stuff.
Well, 1 hour later, I managed to correct the wrong position thing, and some other bugs (was due by not casting an integer division to float).
Today it was the WORST programming days I had in maybe 1 year. Was like god did his very best not to let me finish this god damn thing. Perhaps he is jealous :D
Sign in to follow this  


3 Comments


Recommended Comments

Quote:

Was like god did his very best not to let me finish this god damn thing. Perhaps he is jealous :D



I think his MMORPG is better then yours. Im not saying your is bad or anything but you know real life is a pretty good MMORPG.

Share this comment


Link to comment
God is teaching you that creating life isn't as easy as plugging a few numbers in and saying "germinate!" I have had my bad programming days as well, but usually I realize it after an hour of debugging, then I get up and get some fresh air for the rest of the day.

Today was my hell day of installing linux. I install it, and then try to install TinyOS and it tells me I need to add more packages, I add thoses packages, and it still tells me to add them. After I finally get it all loaded and reboot, my OS doesn't get past the login. I hate this crap.

Share this comment


Link to comment
God doesn't have to teach me about that, because I know it already :)
Anyway, I also had my share of headakes with Linux... Many times.

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now