Experience

General discussion about LÖVE, Lua, game development, puns, and unicorns.
User avatar
appleide
Party member
Posts: 323
Joined: Fri Jun 27, 2008 2:50 pm

Re: Experience

Post by appleide »

Everything happened when I turned a new age because my birthday is in the summer holidays in Australia. That's also when I am most likely to try new things. Things get more interesting as I get older.

It started when I tried to make a card-based game using powerpoint and its hyperlinks when I was 12 years old on a 400mhz G3. Naturally it turned out to just be a powerpoint presentation of a short story... I then moved on to game maker and drew pictures of tanks and guns and made some more slide show like things.

When I was 13 years old I discovered programming languages. I downloaded Revolution 1.1.1, it was buggy as hell, crashed every 20 minutes, but I managed followed through the tutorials. I made some stupid 1 minute rpgs, and then later an instant messaging like thing, but with an AI on the other end, which takes the user's responses and saves them. When you say something it'll say something related to that something, but turns all the "I/me/am/you/your/are"s around so it's talking to user instead. (All of this done without the concept of a variable!)When I was 14 I played Escape Velocity and that gave me lots of ideas.

At 15 years old I downloaded a game called Wesnoth which came with a scripting language called WML. Followed the guide to compiling wesnoth from source. I played with WML for a while before downloading RealBasic and trying to create a WML editor. I played with RealBasic some more.... but then...

At 16, I learnt variables. I found TNTBasic after my dad bought an iMac G5 to replace the G3. I finally learnt what a variable was. I used it to create a prototype of an RTS game I had in mind since I was 14 years old. It was supposed to look like escape velocity. The graphics didn't turn out half bad, because I found a really good free planet image generator. However, TNTBasic was not especially fast, and my skills aren't exactly efficient.
edit: forgot to mention I bought a macbook with my life savings this year, kinda important.

At 17 years old I discovered processing.org. I made a spaceship game akin to Escape Velocity. It was not half bad I impressed my school friends with it :), btw, but I just got bored with it after playing it for a week (It got boring probably because I played too much rather than developing it.). I also made a game called HangThis (hang man game) and released it on mac game sites. I made a couple of libs in Java for processing for myself. I also read and gone through some tutorials with C and Objective-C and XCode, and made a couple of not-so-useful cocoa apps (Tried to make a WML editor again but failed). Tired of the stupid header files. I had my uni-entrance exams this year so I stopped playing with programming for many months.

At 18 years old , after exams and my vacation to China, Hong Kong and Queensland in Australia, I still had a month of holidays till uni actually started in March. A friend on IRC recruited me to help him with his master of orion clone, written in C++, and I installed Linux on trial version of VMWare so I use the same platform he did. This is where I learnt a lot of UNIX and C and SDL stuff, even though I only worked on it for a week.

Out of the blue my dad asked me to write an AJAX application for him. I learnt HTML and Javascript doing this. Javascript is my favorite language, even now. Javascript is somewhat similar to Lisp in a way. I went on IRC and the Lispers were pretty elitist and ended up throwing my emacs away.

Uni started, and so did my commerce/software engineering degree. First course was "Introduction to Programming". I fell asleep every lecture, though I did learn some more 'official' advice... eg. Waterfall Programming model = bad almost always. Java Classes starts with capital letter. A friend I met in uni showed me a piece of Java Code finding the first 100 primes. It was horribly in-efficient. I wrote another one in 15 minutes that ran many times faster. I then decided to do this in Ruby, it was slow, but probably because I used slow-stuff for Ruby. Then someone on IRC showed me a faster algorithm which was even faster than the Java one I wrote. I went on Java IRC and got everyone to help me make a faster algorithm but after trying many hours, I decided Java isn't that good altogether. I did the same thing in C. C is pretty impressive, though is not quite safe (You could run over the arrays and it'd give you all sorts of trouble...). I also found PlayKode (a Lua interpreter not unlike Love), did the same thing in Lua. It wasn't impressive but I loved the language. I decided I would try C+ Lua for a while and see how it goes. It was best desktop programming languages I ever found, though Javascript is still more fun to program with.

I am using C and Lua to write my RTS right now.

To cap off:

So I now know some C, some Lua, some Javascript/HTML, some Java, some BASIC. Not a single language do I know *totally* but I think I know Java the best even though I don't like it anymore. And I am doing a Commerce/Software Engineering degree. I am 18 years old.
User avatar
qubodup
Inner party member
Posts: 775
Joined: Sat Jun 21, 2008 9:21 pm
Location: Berlin, Germany
Contact:

Re: Experience

Post by qubodup »

@appleide

A prototype .pdf. It's final version to be combined with an application (for)

.pdf source
tool

Tell us how it works out.

The fact that I do not do this via pm is probably an indicator for me being an att. who.

PS: Well, I think you composed a nice biography there. :)

PS2:
ivan wrote:I might post a prototype of it later
Yes!
lg.newImage("cat.png") -- made possible by lg = love.graphics
-- Don't force fullscreen (it frustrates those who want to try your game real quick) -- Develop for 1280x720 (so people can make HD videos)
User avatar
rude
Administrator
Posts: 1052
Joined: Mon Feb 04, 2008 3:58 pm
Location: Oslo, Norway

Re: Experience

Post by rude »

Nice read. ^^

I've also stopped using Java for anything but academic purposes ... funny how that seems to happen to everyone. One of the things I like about Lua is brevity (Worst case: flower = 5 vs private static unsiged int flower = 5); it's easy to hack together something quickly.

@qubodup: Haha, "If it's not in Computer Modern, then it might as well not exist". Go Arial! Calibri! I choose you!</pokemon theme>

Edit: Go sensory organs! I failed at noticing the small text ... :D
User avatar
tido
Prole
Posts: 28
Joined: Mon Feb 04, 2008 4:08 pm
Contact:

Re: Experience

Post by tido »

I hate Java! *shakes fist*
User avatar
farvardin
Party member
Posts: 167
Joined: Sat Jun 28, 2008 6:46 pm

Re: Experience

Post by farvardin »

I'm probably the lamest programmer on this forum :oops: :lol:

For years I wanted to learn how to program, but I didn't succeed so far. I've tried C but it was too complicated for me. I've discovered python and I managed to do very basic things with it (using tk or pyqt), and I can do some simple bash scripts too.
I've also made a few interactive fiction games (in French only) using the Inform 6 and Inform 7 programming languages: http://inform-fiction.org

Lua seems to be quite accessible and that's why I want to be in Löve ;)
User avatar
mike
Administrator
Posts: 364
Joined: Mon Feb 04, 2008 5:24 pm

Re: Experience

Post by mike »

Oh yeah, I've heard of that Inform stuff... they put the fiction in "interactive fiction", focusing more on a comprehensive story than making it "pointy clicky fun ^^".
Now posting IN STEREO (where available)
User avatar
Merkoth
Party member
Posts: 186
Joined: Mon Feb 04, 2008 11:43 pm
Location: Buenos Aires, Argentina

Re: Experience

Post by Merkoth »

I hate Inform!*shakes fist*
User avatar
mike
Administrator
Posts: 364
Joined: Mon Feb 04, 2008 5:24 pm

Re: Experience

Post by mike »

Merkoth wrote:I hate Inform!*shakes fist*
Ooh, unbridled hatred. Please elaborate... but to ensure that we don't go too far off topic here: http://www.tehlol.com/love/viewtopic.php?f=3&t=52
Now posting IN STEREO (where available)
MrPickle
Prole
Posts: 24
Joined: Thu Jul 10, 2008 11:43 pm
Location: United Kingdom, Lincolnshire

Re: Experience

Post by MrPickle »

Been coding for 2-3 years (I'm only 14), started off with a language called TorqueScript modding a game called Blockland, the community were horrible so I decided to pursue C++, got into it, then tests and stuff came along and I just didn't have time, then I started playing games and I sort of forgot everything then got bored, sat in a corner waiting for something to entertain me then I found Love and now, here I am.
triplefox
Prole
Posts: 5
Joined: Fri Jul 11, 2008 7:01 am

Re: Experience

Post by triplefox »

Hi, this seems as good a place as any to introduce myself.

I've tried to make games about as long as I can remember(starting with drawings of what I envisioned the gameplay to look like when I was 4 or 5) and, after finishing college, landed a job as a designer at Santa Cruz Games. I am currently finishing up "Igor: The Game". (a movie license - new engine on the Wii, 4-player multiplayer third-person 3d... somehow we've gone start-to-ship in 5 months, which is absolutely ridiculous and nobody on the team has ever done such a short schedule for a console game before...yet the game has turned out OK, for a kid's game)

The brief history: Went to college. Thought I would take Computer Sci. Didn't work out(my interest in the necessary math topics is weak, unlike my older brother who is working on his PHD thesis in mathematics) but the intro classes gave me the little push I needed to get really started in game programming. At that time I used Python/pygame - a great platform to learn on because of the many conveniences and helpful errors.

At college(University of California Santa Cruz) a game design program started in my third year. I was already set on studying for an economics degree at that point but took the classes anyway. I was totally jazzed about the inaugural lecture class and it was followed up with smaller seminars in later quarters. I don't know if I will ever get to see such a energetic, creative environment as that first seminar class. It isn't the same when it becomes work!

Later in my college life, on a whim, I tried making a 2d submarine exploration/shooting game in a homebrew engine with Object Pascal and Lua, and that was a good experience for getting into tune with lower-level stuff. I entered the resulting game, "Deep Sea Redemption," after a few months of work, into the "Pascal Game Development Competition", it got 3rd place. The game was actually a sequel to one I had done in Game Maker for the game classes, "Deep Sea Descent". The Game Maker game was shorter but in almost all respects better, yet I wrote it in three days, whereas the Pascal game took five months. This seems to be a recurring theme in my game design career.

In Love I would like to make a third sequel to the "Deep Sea" series, a much more featureful/modular one, that takes everything I learned from the first two and gradually gets polished into a top-notch game.

One last bit, the part that got me hired. Last summer I decided to make a Flash game, a game that combined elements of the Tower Defense genre and the old arcade game "Rampart." I made many iterations on the concept - strategy games really take a LONG time to do properly. But in the process, I feel that I got a lot of useful ideas about game design and game programming. By February, I was officially graduated from college. I had put in about two weeks of work on a rewrite of the game and it had progressed stupidly fast to playability, complete with a cool hexgrid engine and zooming map. Being lucky enough to be in San Francisco, I headed to down to GDC - not to the conference proper, actually, but to a local meetup that met monthly. I demoed the game at that meetup and impressed the producer for "Igor." Soon after I had an interview and got the job, and that was that.

The game is "Space Creeps" and can be found here. The high score system is probably broken again - it's proven to be a leaden weight, and was really a huge distraction to making the actual game better. I've started a new Flash project now, one focused around 2d online virtual worlds ala Second Life, only much simpler in design. But I got the whim for a new single player game yesterday and started looking for something that would fit my goals best. I am probably going to stick with Love for these reasons:

-Simplified distribution; I can build on top of a community that uses the engine instead of making my own binaries or whatnot. It doesn't have a ton of bulky dependencies as pygame and others do, yet it isn't entirely cut off from low-level extensions, which is the biggest problem with Flash as a developer's platform. It is open-source and very cross-platform. And it seems like a project that is active and gaining interest, always a good sign.

-Lua is a language I am happy with. Although, I've gotten the bug for strong static typed languages - haXe, the language and compiler I used for Flash stuff, has a stong type system styled after ML, but lets you break it and get dynamic-typed behavior whenever you like. It's the best type system I've ever used and has helped me avoid many errors. Lua, on the other hand, still offers better reflection capabilities, which is often useful for games.

-Right set of features. The only checkbox feature I don't see, for the project I'm doing, is physics, but reading a little bit I see that is planned to come in soon.

One feature I did not look at too closely yet is audio sync/precision-timing support; for games like Rock Band/DDR, consistent audio sync is a must-have, but since I don't currently plan on doing that kind of game it's not something I'm clamoring for, or even expecting; Stepmania, the best open-source music game around, eventually built customized audio support for different platforms. So it would probably be a large effort to incorporate a similar grade of support here.
Post Reply

Who is online

Users browsing this forum: Bing [Bot] and 236 guests