User:Snoolas/Journal

From GDWiki

Jump to: navigation, search

You have entered the Journal of Snoolas. Assuming you are at least halfway sane, you really don't want to be here. Please remain calm, and push the "back" button in your browser.

Snoolas 11:20, 30 May 2006 (EDT)

School's finally out, so I might be able to make myself actually do something sometime. Standby...

Snoolas 15:08, 7 December 2005 (EST)

Science project done, finally. This week and one other and it'll be xmas break. Praise be to Yevon! So I ought to get something done sometime somehow, maybe. I've got to work on the contest tutorials, which I have given up hope for winning with. And there's still WikiAdventure...

Snoolas 11:45, 12 November 2005 (EST)

Wow, it's been a while. I haven't been doing much because of school. Amazingly I find the time to post on forums and play games when there simply isn't enough time to do anything productive. I promise I'll pick WikiAdventure up eventually, but right now I need to get cracking on some wiki articles for Lucky's contest.

Snoolas 12:21, 17 Sep 2005 (EDT)

The automatic backup system is in use. It still spits out weird stuff sometimes, but I don't think it can hurt anything, and faulty backuping is better than no backuping... I've been, as I said, porting WikiAdventure to Linux. I've written something to replace the windows HTTP downloading function in WikiAdventure. I had trouble at first, but I finally figured out the mystery of HTTP. You have to send two \n's at the end so the server knows you won't be sending it any more headers! Hurrah! So that's another thing ported.

Snoolas 19:02, 7 Sep 2005 (EDT)

It's been a loooong time since last update. I've pretty much finished OO USE, I think. The Automatic Backup system works, but I need to look at it a bit more before I trust it not to delete all my work. I've also been puttering around with Sion's WikiAdventure, trying to get it working under Linux.

Snoolas 11:01, 14 Aug 2005 (EDT)

Yeah, it's been a while since last update, school's started, and I'm usually too lazy after school to do anything. But I do have projects... I've done tons on my OO version of USE, I've started a making a game website tutorial, and I'm planning on making a shell script to automatically backup my projects. God I hate school.

Snoolas 11:02, 1 Aug 2005 (EDT)

I tested Paddles, and it doesn't have the same problem for some reason. Anyhow, I fixed BlockBreak and uploaded it to the wiki. Now I'm working on... Uhhhh... I suppose I could work on USE, maybe package it up, make OO-USE, etc. I'd like to make a small game with the mouse, because I've never worked with it in SDL. Maybe write a tutorial about the mouse with SDL. Then I need to start working on my side scroller. School is coming up...

Snoolas 18:11, 31 Jul 2005 (EDT)

I was playing around with BlockBreak, and I noticed a HUGE mem leak that I didn't see... It only affects the GAME OVER screen, and I hadn't seen it before. But I fixed it somehow. Expect a fix up tomorrow. The faulty code is also in Paddles, so it needs to be fixed, too.

Snoolas 19:18, 28 Jul 2005 (EDT)

I fixed BlockBreak's many problems and finally got it packaged and uploaded:

Files:Blockbreak-lin.tar.gz

Snoolas 12:49, 27 Jul 2005 (EDT)

Well, I got BlockBreak all fixed up, moved it over to my x86 machine to compile, and it gets all upset about my use of floor(). It worked fine the way it was on my AMD64 machine, but on the other one it got totally angry at me. So I stuck in more static_casts to convert all the ints to doubles and doubles to ints like it wanted me to, and now it compiles, but it spawns double the number of blocks it's supposed to, but they're not on the screen, so you can't get past the first level... :( It isn't my fault! Now I feel a headache coming on already after working on my CRT for like fiteen minutes.

Snoolas 20:03, 25 Jul 2005 (EDT)

My breakout clone (BlockBreak) is at the "Pretty much squared away" stage. There are probably a few things that could be fixed up, tested, commented, etc. Then it is ready to be packaged up and loaded up to the wiki. Just like its sibling, paddles, no planning took place at any time, and thus it is kind of one big hack. It plays absolutely crazy... To get past the first level, you need like thirty lives... Literally, like 30 lives. Half of the balls are lost because the paddle is so difficult to control they slide right off the map without you getting a chance to touch them... But yeah, paddles and blockbreak have been good learning experiences for me. Isn't it funny that I'm polluting the wiki with my "learning experiences?"

Snoolas 13:24, 24 Jul 2005 (EDT)

I finished the first language tutorial and now I'm working on my breakout clone. All those scary errors I had the other day were due to a string buffer not being large enough.... It's always something silly like that... Anyhow, I rewrote the collision detection code with less parens and it worked! Now I have to figure out why the ball isn't bouncing properly. It just plows through the blocks half the time...

Snoolas 11:45, 23 Jul 2005 (EDT)

Still traumatized by my breakout clone's troubles, I'm working on a tutorial about choosing a first language for first time game programmers. So we could say "Here's the link:" to everyone who asks the question in the forums. I"m taking a very unbiased POV in it. Hopefully. ;)

Snoolas 20:41, 22 Jul 2005 (EDT)

Well, just as expected, the collision detection is not working. At all. I have the code, and I am almost totally sure that there's nothing wrong with it, but I seem to be getting random hard crashes and memory errors. When I run the app by itself, it exits when it gets the error, after SDL deploys its parachute... But when it crashes in gdb, it just kind of freezes, gdb apparently unaware that there's a problem... I can ps xwuf it when that happens and the process is taking tons of CPU, when I try to normally kill it with the SIGTERM signal, it doesn't really do anything. I can even go kill -s KILL <PID>, which the process can't refuse. Still, it stays in ps xwuf's display sucking up CPU, listed as <defunct> next to the process name, until I kill gdb, its parent process. Phew... I'd take it to the forums, but it isn't really something that looks like it could be resolved there. To understand my code, you'd have to have a pretty good understanding of my base structures and such. I give up. For the night.

Snoolas 19:08, 21 Jul 2005 (EDT)

Been a while since last update, but I've been busy. Anyhow, I've finished block loading and level generation. Yes, level generation... I was planning on having editable level files that I'd load up, but hey, if I made that, I wouldn't be able to call it a "simple" breakout clone. :P I got the levels to display, and now I'm starting on collison detection with the blocks. Shouldn't be too hard. I'm taking the easy way out and checking every single block on the screen for an intersection and not coming up with some kind of algorithm to avoid the unnecessary processor usage that the easy way would cause. But yeah, I'm still alive.

Snoolas 11:24, 6 Jul 2005 (EDT)

OK, I've gotten started on my breakout clone. I turned my Paddles source to have no enemy paddle and just bounce it off the other side of the screen and have lives instead of points. I emerged the gimp and drew myself two paddles, grey and black. :) I've started on my block loading system. I'm running into a problem with converting an integer to a string. There is a non-ANSI C function that MS compilers have, but not g++. I think I may start a thread about it.

Snoolas 21:09, 3 Jul 2005 (EDT)

It's been a while since last update. I've been very busy, but I'm back to usual. For this week. Then another two weeks of busy-ness. Anyhow, I'ven't gotten that much done. Today I updated my tab -> spaces program to be capable of using the same file for input and output, thus making it vaguely inuitive. The reason I'm updating it is to format an update to my SDL input tutorial that I seriously mucked up pretty darn bad-tationally. Uhhh, that's about all. I asked on the forums for people to try compiling Paddles on Windows, but it appears that everyone is smart enough not to get involved in doing my work for me. Good job, everybody! ;)

Snoolas 13:22, 18 Jun 2005 (EDT)

OK, I finished my tab killing utility, so Paddles for Linux is uploaded now. The Windows version is not cooperating. Maybe if it wouldn't be too much trouble someone could try compiling the source in the Linux package on Windows. The trouble I'm having might just be specific to me and my inexperience/environment.

Snoolas 18:20, 16 Jun 2005 (EDT)

Well, Paddles is finished. It might be tweaked a bit more, but it is finished. It already works on Linux, but good golly does Windows programming suck! I can't get anything working, but it works like a charm instantly on linux. ;) Anyhow, it isn't ready for deployation on anything, because as a result of being made in different editors, some of its indentation is done in tabs and some is done in spaces, and when it was done in tabs, they were set to be displayed as two spaces, but usually they are displayed as like five, so the source looks awful in most editors. Soooo... I couldn't figure out how to convert tabs to spaces with any unix textutils, so I'm writing a CLI program that does it for me. This is my first experience with C++ command line arguments and file I/O. I've already got the CLI part completely done, and it works like a champ. It isn't all that pretty and it seems like there are better ways to do it than the way I did it, but whatever.

Snoolas 21:21, 11 Jun 2005 (EDT)

I've got my new Linux system pretty well squared away a while ago, so I've been working. It's pretty great how on Linux I don't have any games, so the only thing distracting me from working is the GPWiki forums which are a major distraction. ;) I keep the GPWiki open in one desktop and my coding setup with aterm in one corner, rox in another, and scite dominating the screen. I don't know what I would do in any lower resolution! :)

Anyway, my pong clone "paddles" is shaping up. The only things left are AI that works and some sort of crude UI. I forsee trouble with the AI. I coded the physics with tons of crazy gradual velocity changes and friction without any idea the reprecussions it would have later when the AI had to deal with it. I just hacked up a quick and dirty AI scheme and the computer's paddle scoots around on the screen like a drunken rookie ice skater with one leg on ice that needs to be zamboni'ed. It just jumps around and around as the friction takes it farther than it wanted to go and it tries to go back and the friction takes it farther than it wants to go so it goes back and the friction takes it farther than it wanted to go and it tries to go back and the friction takes it farther than it wants... You probably get the point. So it is either make the AI cleverer or take away friction and go back to sudden unnatural stops.

Anothe problem I'm having is with my apparently poor understanding of the fundamental physics that control pong. It seems from looking at other people's code for pong that the increase in the ball's velocity depends upon where relative to the center of the paddle the ball impacts it. I've got it increasing velocity when the paddle and ball are headed in the same direction. Whatever... I wasn't planning on this being a traditonal pong clone. :)

Snoolas 17:08, 31 May 2005 (EDT)

Okay, everything is coming along nicely. The SDL_ttf tutorial is over a thousand words, and I wrote up a basic template for the main controlling file for USE. It compiles correctly, no crashes or failures apparent. I have yet to actually start on any pong logic, though I have made the art for pong! :) That was a challenge. To give you an idea of what it's like, I saved them as monochromatic bitmaps. ;). I would like to have gotten more done by now, but gosh darn Morrowind. I wish it was short and to the point like Adonthell (A game I beat recently, google around for it. It is a GPL adventure game.)

Snoolas 13:38, 28 May 2005 (EDT)

I finished the simple SDL codebase, which I have named USE (Ultra Simple Engine). It compiles perfectly, no warnings or errors, even with -Wall (It's amazing how helpful -Wall is. It caught several errors that would have bugged me to death at runtime) enabled, but I still don't know what kind of nasty mem leaks or such lurks around in its code that I won't be able to find until I actually see it in action. I'm thinking about writing an SDL_ttf tutorial for the wiki. I don't think we have one yet. I ordered some hardware from newegg.com that should be here soon. A Linux compatable wireless adapter, new hard drive, and a DVD-ROM drive. I'm planning on installing it all and then doing a Stage one ADM_64 Gentoo dual boot on this computer. It will be difficult, because I'll have to bootstrap it networkless because I have to install my wireless adapter drivers after the base system, which isn't a trivial task. I should be staring on pong sometime soon.


Snoolas 11:50, 26 May 2005 (EDT)

I finished the self-defense tutorial. It didn't turn out too bad. I think that people will add to it more and more. So... On tap for today... I am thinking that before I begin on my pong project, I'm going to take the code from Eat (Which, by the way, I recently ported to Linux) and strip it down to make an (Oh, man I just sneezed on my F10 key. Gross.) extreeeemely simple engine, (so simple it should really be called a codebase) so that I won't have to start from scratch on all the simple SDL games I'm planning on writing. Just some initialization routines, image loading, image blitting, text rendering, all the basics. I'm thinking breakout would be good for after pong.


Snoolas 15:54, 25 May 2005 (EDT)

Okay, so I figured I should set up a journal here so I can pretend like someone cares about me and what I'm doing. I doubt anyone will really read it and it will just clutter up the recent changes page, but whatever. At the moment, I'm working on a tutorial for the wiki that was on the Requested Pages Page about protecting your software from cracking and cheating. I hardly think I'm qualified to write about something like that, but it's coming along nicely. School's out, so I should be able to work on things a lot more. I'm planning on starting a new programming project when I finish with this tut. A pong clone, it shall be. I was previously avoiding pong because I just couldn't imagine what sort of crazy scary math was involved in finding out whatever the heck the ball should do when it hits things, but I read some other tutorial for making pong somewhere and found that all you have to do it invert the according velocity varible. God am I dumb.

Personal tools