• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 19:51
CET 01:51
KST 09:51
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
HomeStory Cup 28 - Info & Preview0Rongyi Cup S3 - Preview & Info3herO wins SC2 All-Star Invitational14SC2 All-Star Invitational: Tournament Preview5RSL Revival - 2025 Season Finals Preview8
Community News
Weekly Cups (Jan 19-25): Bunny, Trigger, MaxPax win3Weekly Cups (Jan 12-18): herO, MaxPax, Solar win0BSL Season 2025 - Full Overview and Conclusion8Weekly Cups (Jan 5-11): Clem wins big offline, Trigger upsets4$21,000 Rongyi Cup Season 3 announced (Jan 22-Feb 7)38
StarCraft 2
General
HomeStory Cup 28 - Info & Preview StarCraft 2 not at the Esports World Cup 2026 Weekly Cups (Jan 19-25): Bunny, Trigger, MaxPax win Oliveira Would Have Returned If EWC Continued herO wins SC2 All-Star Invitational
Tourneys
HomeStory Cup 28 $21,000 Rongyi Cup Season 3 announced (Jan 22-Feb 7) OSC Season 13 World Championship $70 Prize Pool Ladder Legends Academy Weekly Open! SC2 All-Star Invitational: Jan 17-18
Strategy
Simple Questions Simple Answers
Custom Maps
[A] Starcraft Sound Mod
External Content
Mutation # 510 Safety Violation Mutation # 509 Doomsday Report Mutation # 508 Violent Night Mutation # 507 Well Trained
Brood War
General
Bleak Future After Failed ProGaming Career Potential ASL qualifier breakthroughs? BW General Discussion BGH Auto Balance -> http://bghmmr.eu/ [ASL21] Potential Map Candidates
Tourneys
[Megathread] Daily Proleagues Small VOD Thread 2.0 Azhi's Colosseum - Season 2 [BSL21] Non-Korean Championship - Starts Jan 10
Strategy
Simple Questions, Simple Answers Zealot bombing is no longer popular? Current Meta Soma's 9 hatch build from ASL Game 2
Other Games
General Games
Battle Aces/David Kim RTS Megathread Path of Exile Nintendo Switch Thread Mobile Legends: Bang Bang Beyond All Reason
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread YouTube Thread Canadian Politics Mega-thread European Politico-economics QA Mega-thread
Fan Clubs
The herO Fan Club! The IdrA Fan Club
Media & Entertainment
Anime Discussion Thread [Manga] One Piece
Sports
2024 - 2026 Football Thread
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List
Blogs
How Esports Advertising Shap…
TrAiDoS
My 2025 Magic: The Gathering…
DARKING
Life Update and thoughts.
FuDDx
How do archons sleep?
8882
James Bond movies ranking - pa…
Topin
Customize Sidebar...

Website Feedback

Closed Threads



Active: 2104 users

Programming Project

Blogs > Aerox
Post a Reply
Aerox
Profile Blog Joined September 2004
Malaysia1213 Posts
Last Edited: 2008-08-11 07:54:07
August 11 2008 06:53 GMT
#1
O ye masters of programming(or just experienced) on TL, I have about 8 hours before I finalize my proposal document(s). I might make multiple proposals if I have time. And yes I will still have to discuss them with my supervisor.

Basing from what I have posted in this blog post by senff:
http://www.teamliquid.net/blogs/viewblog.php?topic_id=76401

What I posted as a question (if you're reading this, ignore the questions here as I'm prolly rephrasing the stuff below after the spoiler):

+ Show Spoiler +
I am doing my final semester of CS. Well, sort of. I am currently mulling over the decision to go for a programming project or industrial training as my elective. I would finish earlier if I went with the programming project but the catch is that I only have 14 weeks while taking industrial training would require me to stay back for another semester. And yeah, I still have 3 other subjects alongside the elective.

What are your thoughts on this? Do you think the stay back is worth the industrial training or should I just choose PP, finish, graduate, and get out in the real world, earn bigger moolah than being an intern?

Do you think I'd have enough time if I chose to make a 2D game as my programming project? would it be too much work to make the game multiplayer? I wonder if making a MUD would be just fine for a project?

I am obviously trying to get into the game industry.

My skill level would be having gone through a couple of 2D game programming books (WinAPI) but no fully self implemented games of my own yet (which is why I'm considering my first to be my programming project). Main languages are the popular 3 Cs and Java. Do I have enough time?

I haven't picked up DX yet. Trying to start in the next week or so(no matter which elective i choose).


I have decide to take up on doing a Programming Project. The scope will be on games. The most important help I ask from the programming gurus in this forum are their experiences on the estimation of time. Thus, I have narrowed down to a few different ideas on my choice for a project:

I have 14 weeks in a semester and 1 week has passed. I think I hope to finish the game in 10 weeks or maybe specifically weekends. So most of these questions are about "Do I have enough time?".


First of all, an RPG(maybe 2D):
- Would it take too long to implement a multiplayer RPG ala diablo(connect to IP)?
- Would doing a MUD be easier/faster?
- Would a 3D RPG take more time than a 2D one?

Next, what about a handphone game (I'll prolly do a top down shooter with this one):
- The advantage I read is that I could just show it to my potential employer in the interview on the spot. Is this easier? Would it be impressive to the employer given the technology? (So far I only know that I have to program for the MIDP 2.0 platform now)

Then, web-based game?:
- I think this is sort of easy so I think I want to take up on going for a forum RPG if this sounds feasible. However, through past experiences of hanging around on the net, many forum RPG projects have failed or disappeared into oblivion. Anyone knows why? Is it because it is harder than expected?
- Hmm... maybe is it because there doesn't seem to be a need due to the RPGs like http://www.kingdomofloathing.com ?
- My idea is to have battles which are card-based aka MtG or GuildWars. So is it feasible?

One more idea:
- I have one more idea in mind which I think could be way up there which is to just make a game on NPCs and work on the AI like Oblivion's Radiant AI? Behaviour stuff. This is too much work right? even in 2D?

Etc:
- Is there a recommendation for a project that would help me(or the game programming world) in the working world of game programming?
- If ye masters have a suggestion on taking things a different direction, please do not hesitate to post. I'm willing to listen.

Thanks.

EDIT: Agh, actually I already listed my qualifications but only in the quoted question i posted but I'll just post it here: I know the C/C++/C# and Java. I do know WinAPI Programming. I'll be trying to learn DirectX this week. With the direction I'm heading, I'm going for a game in C++/WinAPI... 2D or 3D(DX), haven't decided on that yet.

"Eyes in the sky."
MasterOfChaos
Profile Blog Joined April 2007
Germany2896 Posts
Last Edited: 2008-08-11 07:45:17
August 11 2008 07:21 GMT
#2
Go small. Making a polished game takes much longer than you'd expect. Do you want to use a gamemaker or a 3rd party engine or do you want to do everything yourself? Where do you want to get the graphics? How much programming practice do you have?
What is your goal? A polished game, or just a techdemo?
edit:For example my first game was a snakes clone. The game itself is 20kB, the menus, editor and other polishing takes another 60kB. (sizes are human typed sourcecode, not formular designer data and 3rd party stuff)
I know this game is too simple for you, but it shows that polishing the game can take a significant part of the total work.
LiquipediaOne eye to kill. Two eyes to live.
Mastermind
Profile Blog Joined April 2008
Canada7096 Posts
August 11 2008 07:26 GMT
#3
You really didnt give enough details
Aerox
Profile Blog Joined September 2004
Malaysia1213 Posts
Last Edited: 2008-08-11 08:06:24
August 11 2008 07:43 GMT
#4
Do you want to use a gamemaker or a 3rd party engine or do you want to do everything yourself? Where do you want to get the graphics? How much programming practice do you have?
What is your goal? A polished game, or just a techdemo?


I know at least the 3 Cs and Java. And enough WinAPI for 2D programming. I'm in my final semester(6th sem - 3rd year). Well, I'll be drawing the 2D graphics myself(not a pro). I would definitely go for a polished game unless I go for an RPG or doing the RnD game idea stuff.

You really didnt give enough details

Tell me what I need to tell you.

edit:For example my first game was a snakes clone. The game itself is 20kB, the menus, editor and other polishing takes another 60kB. (sizes are human typed sourcecode, not formular designer data and 3rd party stuff)
I know this game is too simple for you, but it shows that polishing the game can take a significant part of the total work.

Ah yeah, thanks, I've forgotten about this point to take into consideration(making a menu, sounds, image resources). Maybe I'll do a fullscreen one? Hmm.. also depends on if I'm allowed third party engines. I've just fired this question at my lecturer. Awaiting reply now.
"Eyes in the sky."
MasterOfChaos
Profile Blog Joined April 2007
Germany2896 Posts
Last Edited: 2008-08-11 08:01:10
August 11 2008 08:00 GMT
#5
How much experience do you have with programming in practice? What is the most complex project you wrote so far?
If you want to do the game without 3rd party stuff and you have no projects done yet, you should not go beyond sth like bomberman, a top down shooter etc. Bomberman is a nice concept because it is very extendable(You can include pacman oder loderunner style levels without significant changes to the codebase).
LiquipediaOne eye to kill. Two eyes to live.
samachking
Profile Blog Joined August 2007
Bahrain4949 Posts
August 11 2008 08:00 GMT
#6
Make a Starcraft application please.
You can make an application that runs one player's replay and runs it as if it were a FPVOD, that would be completely awesome.
"And then Earthlings discovered tools. Suddenly agreeing with friends could be a form of suicide or worse. But agreements went on, not for the sake of common sense, or decency, or self preservation, but for friendliness."
Aerox
Profile Blog Joined September 2004
Malaysia1213 Posts
Last Edited: 2008-08-11 09:08:44
August 11 2008 08:14 GMT
#7
On August 11 2008 17:00 MasterOfChaos wrote:
How much experience do you have with programming in practice? What is the most complex project you wrote so far?
If you want to do the game without 3rd party stuff and you have no projects done yet, you should not go beyond sth like bomberman, a top down shooter etc. Bomberman is a nice concept because it is very extendable(You can include pacman oder loderunner style levels without significant changes to the codebase).


I guess it's the motion sensor application on an IP camera. However it's in Java which I feel the coding would be quite different for C++. For C++, My best one would be some simple Hotel Reservation system but it's console based. So I guess I'm not too pro on the C++ side. I've coded/modified games based on a couple of beginners game programming books which is where i pick up my WinAPI programming :/ Hmm... I guess one scope narrowed down: I'll limit myself to 2D.

On August 11 2008 17:00 samachking wrote:
Make a Starcraft application please.
You can make an application that runs one player's replay and runs it as if it were a FPVOD, that would be completely awesome.

I think that would require me to study about the StarCraft replay file architecture which I currently have zero knowledge of and also to know more about memory hacking techniques which prolly is in the realm of an advanced professional or more likely a specialist. You would best be asking that feature/program from MasterOfChaos here. I don't think I should waste my time on learning these stuff yet until I have a proper job. ^^
"Eyes in the sky."
Aerox
Profile Blog Joined September 2004
Malaysia1213 Posts
August 11 2008 09:41 GMT
#8
Alright! I'm allowed to use a third party engine. I guess I'll be surfing for engines for these few days. I will have to limit my time till the end of this week. I will start constructing one myself if I haven't found something I like. VROOM VROOM.
"Eyes in the sky."
Bill307
Profile Blog Joined October 2002
Canada9103 Posts
August 11 2008 11:58 GMT
#9
I think the biggest advice I can give is this: choose a game genre that doesn't require a lot of in-game content! For something like an RPG, creating the game content -- art, storyline, dialog, monsters, etc. -- will consume FAR FAR FAR more time than the actual coding. Even for a game like a vertical shoot-em-up, if you want polished game content and not just random boring enemies and bullet patterns, then you'd still spend more time on the content than you do on the coding.


In my own experience...
+ Show Spoiler [lots of text] +
In my own experience, I took a university course on 3D graphics and for my final project I proposed to make a vertical shoot-em-up game with a single level. (Kind of like this video, but easier.) I had about 3 weeks to do it. Most of the marks would be awarded for advanced techniques related to graphics, such as textures, shadows, particle systems, procedurally-generated terrain, etc.

Prior to this, I had already learned how to use OpenGL, except for the new advanced technical features that I would have to implement. We also had code that allowed us to create and load simple meshes, sans textures (I had to add texture support myself).

Although I had a bunch of other assignments due during those weeks, I spent most of my time in the graphics lab working on my game. A couple of the graphics techniques gave me trouble but for the most part it wasn't hard so much as time-consuming.

Programming the game engine was easy. I thought out most of the design beforehand and had no trouble implementing it. A 2D shoot-em-up (with 2D and 3D graphics) has very simple game logic.

The content, however, was surprisingly time-consuming. Making the model for the player's ship and finding suitable textures for it must have taken at least 5 hours. Making the 2D sprites for all the bullets took probably another 5 hours. Making a model for the "TestEnemy" was another several hours. And then there was the boss. This was where I wanted to spend most of my time. This model took extra long because I wanted to position the gun turrets to match the locations where bullets would be fired. And even though I chose to use patterns from other games rather than wasting time inventing my own, it still took me 1-2 hours per pattern, mostly tweaking it to look cool and adjusting the difficulty. Expect to spend a LOT of time tweaking things to make them look or feel just right. All things considered, the boss took me probably ~20 hours to make, and I didn't even get to make it as awesome as I wanted because I started running out of time despite pulling all-nighters.

In the end, I was so short on time that I had to throw together a procedurally-generated landscape (just some sinusoidal grassy hills) in about 1 hour, and the results actually looked pretty good. Then I had 15 minutes left to make the rest of the level leading up to the boss. So I made my "TestEnemy", which was never supposed to be in the final game, come down randomly for about 15 seconds while the hills scrolled by below. And I threw in a single arch consisting of 3 rectangles to "decorate" the terrain. So yes, aside from the boss, I spent only 15 minutes on the level.

I learned that making even a very simple game is a lot of work. I originally envisioned having a landscape with multiple buildings and various kinds of enemies that would have their own behaviour patterns, but making all of that content would've taken me another week, I think. So I felt disappointed in my end product. The only redeeming quality was that the boss was, for the most part, really cool and polished to the point where it was almost on-par with e.g. the boss in that video I linked to above. When I received my marks back, I found out that the markers were very impressed by the bullet patterns I'd done. (I'm guessing very few people outside of Japan have ever seen a shoot-em-up like that before.) My goal was to make them both visually stunning and easy-to-dodge, and I succeeded. Even though the level was a bland 15-minute hackjob, they didn't deduct marks because they realized that making a fully polished game is simply impossible to do in a few weeks. My half-polished game got the silver award for being the 2nd-best project.

Now, whereas I had only a few weeks to work on my project, you'll have about 4x as long. I estimate that's enough to finish a simple shoot-em-up game with, say, 3-5 unique, polished, and fairly interesting stages.

Writing the game engine and all the other necessary graphics, sound, and input code can be done in about 3-5 weeks, that is assuming you already know how to draw the graphics to the screen, and are patient enough to think your design through without rushing off to implement it. I had it easy because my design worked well and I knew what I was doing, and I could give you some pointers too if you'd like. A bad design, on the other hand, could easily double the amount of time you spend on this part.

From there, I'd give you another 1-2 weeks for each stage. Of course, if the first part takes you longer than expected, then you can always make your game shorter or less interesting.


In general, you want to create a game with simple game logic and relatively little game content. This is definitely doable in 14 weeks. Just remember that if anything kills you, it won't be the code: it'll be the game content.
Bill307
Profile Blog Joined October 2002
Canada9103 Posts
Last Edited: 2008-08-11 12:12:23
August 11 2008 12:11 GMT
#10
Unless you're sorely desperate for experience in C or C++, don't use them. Use Java or C#. With Java you can use either Java2D, or OpenGL via JOGL: OpenGL can do 2D graphics pretty easily with orthographic projection, and you can also easily mix 2D and 3D graphics like I did. With C# you can use Microsoft's XNA Game Studio, which will save you some time compared to learning OpenGL and JOGL.

On the other hand, if you're doing this for the programming experience, then you might want to take the time to learn OpenGL. It may seem intimidating but it's actually quite easy. By the way, OpenGL is pretty much identical in Java with JOGL compared to C++. I can literally copy and paste my OpenGL code from C++ into Java, add "gl." or "GL." in a bunch of places, and it'll work the same.
BluzMan
Profile Blog Joined April 2006
Russian Federation4235 Posts
August 11 2008 13:10 GMT
#11
I've made a couple of lua-programmed mods, and I must say that what you're proposing is undoable by one man in that period of time. Recruit people for the content, and maybe (maybe) you will be there in time if you dump the AI part. An RPG is extremely content-based, so if I were you, I'd forfeit it and make a TBS instead. Seriously, it will save you a lot of time.

For reference purposes, the only thing I was about to implement in one of my mods was a hero-type unit (a familiar) for a HoMM-type game, with experience and learnable skills. It grew into thousands of lines of code and a fuckton of work that took like 2 months, and I didn't even make any artwork, only reskinned an existing model. One unit. Most of that was exception-handling, balance and interfacing (if some mechanism isn't obvious to the player, it doesn't work).

Now, if you're seriously into it, the first thing you should do is get a thick paperbook and document every single feature you want to do. Once that is down, expand the document, explaining (for every single thing) why it should be in your game. Then, expand it again, describing exactly how you want it done and how much time it is going to take. Naturally, you will have cross references appearing at this stage with code from one feature influencing another.

After you've done that, you will pretty much understand that alot of stuff needs to be dumped. Only keep the core features and continue with them, you will only let it grow if you have the time, which you won't.
You want 20 good men, but you need a bad pussy.
Aerox
Profile Blog Joined September 2004
Malaysia1213 Posts
Last Edited: 2008-08-11 13:30:21
August 11 2008 13:20 GMT
#12
Haha, yeah, doing a Touhou style shooter is exactly what I had in mind if I'm going that route. Thanks, Bill, your posts helped a lot. I'm currently reading up on a game design book for more ideas. Now criterias are: 2D and less in-game content.

EDIT: Thanks, BluzMan. I like this tip:
Once that is down, expand the document, explaining (for every single thing) why it should be in your game. Then, expand it again, describing exactly how you want it done and how much time it is going to take.

Simple enough to keep in my head on what to write in my documentation. Obviously I will need to submit documentation.

And almost forgot to thank MasterOfChaos as well. Thanks!
"Eyes in the sky."
sundance
Profile Blog Joined May 2004
Slovakia3201 Posts
August 11 2008 15:40 GMT
#13
Make Super Mario Bros. clone. It's actually pretty easy and you need to paint just few tiles. I did it with autogenerated levels b/c I was really lazy and I didn't want to waste my time with level design.
Nick Cave & the Bad Seeds
MasterOfChaos
Profile Blog Joined April 2007
Germany2896 Posts
August 11 2008 16:34 GMT
#14
You should also look at the introversion games (defcon, darwinia, etc). They are masters in creating good games with minimal manually created content.
When implementing I always begin with the code and implement the hardest things first, so I find out early if they work. Main disadvantage with that order is, that I usually don't have the motivation to finish the game once all interesting parts are done. But I code for codings sake, and not to for university.
And from my experience with cs students with few practical experience: Don't overengineer it.
LiquipediaOne eye to kill. Two eyes to live.
Night[Mare
Profile Blog Joined December 2004
Mexico4793 Posts
August 11 2008 18:17 GMT
#15
If you want any good ideas for simple but good games that i dont think require much coding, you can take a peak at ArmorGames. There's tons of cute games so you can actually grab an idea from there.

I hope you do good!
Teamliquidian townie
OakHill
Profile Blog Joined March 2008
United States168 Posts
August 12 2008 03:02 GMT
#16
Use XNA
Aerox
Profile Blog Joined September 2004
Malaysia1213 Posts
August 12 2008 03:15 GMT
#17
Thanks all. I've got my proposals ready.

First would be a transformable top down shooter(using keyboard and mouse) and the second would be a platformer (in the direction of castlevania). I'm pushing as far as I can with the attempts but still within the criteria limits(less content, 2D). Then I'm going to discuss with the supervisor and cut down on the overly ambitious stuff. This proposal is basically just another draft to narrow down the scope of the shooter features.

On August 12 2008 01:34 MasterOfChaos wrote:
And from my experience with cs students with few practical experience: Don't overengineer it.

Thanks for the advice. I'm going to try with rapid prototyping(read about it on gamasutra)... well not too rapid since this is my first time trying it.

I'll post updates.
"Eyes in the sky."
Please log in or register to reply.
Live Events Refresh
Next event in 11h 10m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
ProTech131
RuFF_SC2 111
CosmosSc2 107
UpATreeSC 64
NeuroSwarm 34
StarCraft: Brood War
Artosis 670
Shuttle 153
Terrorterran 5
League of Legends
C9.Mang0356
Counter-Strike
taco 589
Super Smash Bros
AZ_Axe127
Other Games
tarik_tv6498
ViBE90
Livibee64
Mew2King44
KnowMe42
minikerr12
Organizations
Other Games
BasetradeTV34
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 17 non-featured ]
StarCraft 2
• Hupsaiya 102
• Berry_CruncH69
• davetesta38
• musti20045 33
• Kozan
• Migwel
• AfreecaTV YouTube
• sooper7s
• intothetv
• IndyKCrew
• LaughNgamezSOOP
StarCraft: Brood War
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
League of Legends
• Doublelift5173
• imaqtpie2099
• Scarra1177
Upcoming Events
HomeStory Cup
11h 10m
Korean StarCraft League
1d 2h
HomeStory Cup
1d 11h
Replay Cast
1d 23h
HomeStory Cup
2 days
Replay Cast
2 days
Replay Cast
3 days
Wardi Open
4 days
WardiTV Invitational
5 days
The PondCast
6 days
[ Show More ]
WardiTV Invitational
6 days
Liquipedia Results

Completed

Proleague 2026-01-29
OSC Championship Season 13
Underdog Cup #3

Ongoing

CSL 2025 WINTER (S19)
KCM Race Survival 2026 Season 1
Acropolis #4 - TS4
Escore Tournament S1: W6
Rongyi Cup S3
HSC XXVIII
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual
eXTREMESLAND 2025
SL Budapest Major 2025
ESL Impact League Season 8
BLAST Rivals Fall 2025

Upcoming

Escore Tournament S1: W7
Acropolis #4
IPSL Spring 2026
uThermal 2v2 2026 Main Event
Bellum Gens Elite Stara Zagora 2026
LiuLi Cup: 2025 Grand Finals
Nations Cup 2026
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League Season 23
ESL Pro League Season 23
PGL Cluj-Napoca 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.