• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 07:07
CET 13:07
KST 21:07
  • 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
RSL Revival - 2025 Season Finals Preview8RSL Season 3 - Playoffs Preview0RSL Season 3 - RO16 Groups C & D Preview0RSL Season 3 - RO16 Groups A & B Preview2TL.net Map Contest #21: Winners12
Community News
$21,000 Rongyi Cup Season 3 announced (Jan 22-Feb 7)12Weekly Cups (Dec 29-Jan 4): Protoss rolls, 2v2 returns7[BSL21] Non-Korean Championship - Starts Jan 103SC2 All-Star Invitational: Jan 17-1822Weekly Cups (Dec 22-28): Classic & MaxPax win, Percival surprises3
StarCraft 2
General
Weekly Cups (Dec 29-Jan 4): Protoss rolls, 2v2 returns Spontaneous hotkey change zerg Chinese SC2 server to reopen; live all-star event in Hangzhou SC2 All-Star Invitational: Jan 17-18 Weekly Cups (Dec 22-28): Classic & MaxPax win, Percival surprises
Tourneys
$21,000 Rongyi Cup Season 3 announced (Jan 22-Feb 7) WardiTV Winter Cup WardiTV Mondays SC2 AI Tournament 2026 OSC Season 13 World Championship
Strategy
Simple Questions Simple Answers
Custom Maps
Map Editor closed ?
External Content
Mutation # 508 Violent Night Mutation # 507 Well Trained Mutation # 506 Warp Zone Mutation # 505 Rise From Ashes
Brood War
General
Potential ASL qualifier breakthroughs? I would like to say something about StarCraft BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion StarCraft & BroodWar Campaign Speedrun Quest
Tourneys
[Megathread] Daily Proleagues [BSL21] Grand Finals - Sunday 21:00 CET [BSL21] Non-Korean Championship - Starts Jan 10 SLON Grand Finals – Season 2
Strategy
Game Theory for Starcraft Simple Questions, Simple Answers Current Meta [G] How to get started on ladder as a new Z player
Other Games
General Games
Awesome Games Done Quick 2026! Mechabellum Beyond All Reason Stormgate/Frost Giant Megathread General RTS Discussion Thread
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 European Politico-economics QA Mega-thread Things Aren’t Peaceful in Palestine Trading/Investing Thread
Fan Clubs
White-Ra Fan Club
Media & Entertainment
Anime Discussion Thread
Sports
2024 - 2026 Football Thread
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List TL+ Announced
Blogs
My 2025 Magic: The Gathering…
DARKING
Physical Exercise (HIIT) Bef…
TrAiDoS
Life Update and thoughts.
FuDDx
How do archons sleep?
8882
James Bond movies ranking - pa…
Topin
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1184 users

Want to program video games? - Page 10

Blogs > CecilSunkure
Post a Reply
Prev 1 8 9 10 All
Kinshuk
Profile Joined February 2011
India116 Posts
December 07 2011 02:56 GMT
#181
really good read there was a time when i was really interesting in becoming a programmer but its just way over my head... i just cannot deal with such complicated math
Spikeke
Profile Joined October 2010
Canada106 Posts
December 07 2011 19:33 GMT
#182
Junior game programmer here. I started programming and game making about 12 years ago as a hobby. First using RPG Makers and VB in high school, after graduation I taught myself the basics of C++ and managed to create some games/apps. Couple years past and I managed to get into a Game Dev program at a local college. Which is an eye-opener in itself, infinite amounts of work with little time and sometimes with groups that won't function together. I had the impression that many students felt that if they graduated with minimal effort they would be guaranteed a job. These game dev programs teach many useful skills, but you can't rely on a school program alone, you have to work on projects and your ideas on your own time, constantly improving your skills. And not for the sake of graduating or getting a job later, but because you want to, you love to code/draw and want to improve your skills. Needless to say, more than half of the students that I started with, either failed or dropped out... And half of the students that did graduate, actually got jobs that I know of. I graduated this spring, and started my brutal search for a game programming related job. About 5 months later, I was offered a position at a local start-up company.

Programming is just one slice of the game development pie, and just because you know how to program, doesn't mean you know how to make games. A programmer writes code, not "make games". There are many aspects of game design, understanding the psychology of the player and what incentives drive the player are also important. I would also say that most games have more artists than programmers on staff. Deciding where you fit and pushing your skills to the limit is what you have to do to get recognized. Great games are made with great teams. Thus, inter-personal skills are also important, no one wants to hire you if you can't work along with anyone.

I would never imagine I would be a programmer if you asked me 10 years ago. I'm not even a math genius, I failed grade 10 math when I was a teen and had to take it over in summer school. My point is, do what you love and keep at it, and you'll get where you want to be. Be persistent and never give up.

Anyway enough jibber jabber, got to get back to work :S
Amaroq64
Profile Joined October 2011
United States75 Posts
December 07 2011 21:11 GMT
#183
This is awesome. I commend you for recommending C and C++. An ex-friend of mine thinks Python is the be-all end-all programming language for everything, but it is a hell of a lot slower than C which makes a difference for something potentially huge like a game.

I haven't programmed any games, but I've done some of the SDL tutorials on an SDL tutorial website. My programming experience is mostly making web pages. Which I know doesn't really count as programming until you get into things like javascript and php.

But making games is one of my dreams in life. Just because I have amazing game ideas that I want to bring to life.

One of the things I've realized is that just programming for the sake of programming bores me. The thrill I get out of programming is the same thrill that an artist gets out of drawing: Coming up with an amazing idea and bringing it to life.
A is A.
ddengster
Profile Blog Joined January 2009
Singapore129 Posts
December 08 2011 13:34 GMT
#184
@CecilSunkure
Some advice from a fellow DP-Sg student
On http://cecilsunkure.blogspot.com/2011/12/windows-console-game-painters-algorithm.html, whats that pile of hardcoded garbage? I hope you're not putting that into your game. Write a .bmp image importer, and never put that huge array(and in fact any hardcoded stuff) in any source code again.

And don't hardcode 255 as 'transparency'. Maintain a frame buffer with depth buffer values, or do z-ordering per image. Avoid such hardcoding especially in the early stages of your development.

Plus, I'm surprised you have the time to blog given DP's unforgiving schedule. You'll find yourself watching less starcraft as time goes on.
Check out NEO Impossible Bosses, RTS-MOBA boss rush at http://neoimpossiblebosses.coder-ddeng.com
KeksX
Profile Blog Joined November 2010
Germany3634 Posts
December 08 2011 13:51 GMT
#185
On December 08 2011 22:34 ddengster wrote:
@CecilSunkure
Some advice from a fellow DP-Sg student
On http://cecilsunkure.blogspot.com/2011/12/windows-console-game-painters-algorithm.html, whats that pile of hardcoded garbage? I hope you're not putting that into your game. Write a .bmp image importer, and never put that huge array(and in fact any hardcoded stuff) in any source code again.

For learning purposes it's perfectly fine, even though the next step should always be how to avoid that.
ShadowWolf
Profile Joined March 2010
United States197 Posts
December 08 2011 15:12 GMT
#186
On December 08 2011 22:34 ddengster wrote:
@CecilSunkure
Some advice from a fellow DP-Sg student
On http://cecilsunkure.blogspot.com/2011/12/windows-console-game-painters-algorithm.html, whats that pile of hardcoded garbage? I hope you're not putting that into your game. Write a .bmp image importer, and never put that huge array(and in fact any hardcoded stuff) in any source code again.

And don't hardcode 255 as 'transparency'. Maintain a frame buffer with depth buffer values, or do z-ordering per image. Avoid such hardcoding especially in the early stages of your development.

Plus, I'm surprised you have the time to blog given DP's unforgiving schedule. You'll find yourself watching less starcraft as time goes on.


Writing this in to a bitmap and then decoding it would be an enormous hassle because bitmap encoding applications I've seen don't support CHAR_INFO stuff. Unless I'm missing something, you'd end up probably having to build a bunch of meta-data and analysis to transform the bitmap to the desired CHAR_INFO struct. What he should do is put it in a source file and load it (which maybe is a long-term plan).

Considering his game is a console app and must be written specifically to do console stuff, I'm pretty sure that any type of abstraction he does is going to just make life more miserable for him with absolutely no value later-on. There aren't really translatable concepts in a cruddy win32 console window that will easily move over to a Win32 non-console app. He'll have to do plenty of hacks just to get everything working. While learning, adding something like a generic rendering subsystem just adds complexity where you don't need it to a system that will never use it.

Besides, going through the pain of taking something from Win32Console -> Generic Console (for example) at least once is probably good because it'll help you understand how to better build a generic console abstraction. When you have a good understanding of what the differences are then you will have an easier time of visualizing where you need abstraction and where it's unnecessary.
ddengster
Profile Blog Joined January 2009
Singapore129 Posts
December 08 2011 15:47 GMT
#187
On December 09 2011 00:12 ShadowWolf wrote:
Show nested quote +
On December 08 2011 22:34 ddengster wrote:
@CecilSunkure
Some advice from a fellow DP-Sg student
On http://cecilsunkure.blogspot.com/2011/12/windows-console-game-painters-algorithm.html, whats that pile of hardcoded garbage? I hope you're not putting that into your game. Write a .bmp image importer, and never put that huge array(and in fact any hardcoded stuff) in any source code again.

And don't hardcode 255 as 'transparency'. Maintain a frame buffer with depth buffer values, or do z-ordering per image. Avoid such hardcoding especially in the early stages of your development.

Plus, I'm surprised you have the time to blog given DP's unforgiving schedule. You'll find yourself watching less starcraft as time goes on.


Writing this in to a bitmap and then decoding it would be an enormous hassle because bitmap encoding applications I've seen don't support CHAR_INFO stuff. Unless I'm missing something, you'd end up probably having to build a bunch of meta-data and analysis to transform the bitmap to the desired CHAR_INFO struct. What he should do is put it in a source file and load it (which maybe is a long-term plan).

Considering his game is a console app and must be written specifically to do console stuff, I'm pretty sure that any type of abstraction he does is going to just make life more miserable for him with absolutely no value later-on. There aren't really translatable concepts in a cruddy win32 console window that will easily move over to a Win32 non-console app. He'll have to do plenty of hacks just to get everything working. While learning, adding something like a generic rendering subsystem just adds complexity where you don't need it to a system that will never use it.

Besides, going through the pain of taking something from Win32Console -> Generic Console (for example) at least once is probably good because it'll help you understand how to better build a generic console abstraction. When you have a good understanding of what the differences are then you will have an easier time of visualizing where you need abstraction and where it's unnecessary.


It might be a bit daunting at first, but the rewards justify the cost. It's much, much easier to open a picture-editing program like photoshop/gimp/etc and edit the correct color values, save the file and load it into the game. Compare that to putting lots of 255s and color values into hardcoded arrays. You'll be wasting more time doing these kinds of stuff than actually learning things like how file formats are stored, etc. No to mention that if you have to change image sizes and so on, you'll have to maintain the array to make sure crashes don't happen.

http://en.wikipedia.org/wiki/BMP_file_format details the bmp file format image. It's probably one of the easier file formats to decode, and I'm sure that you can google for code on decoding such stuff. Basically, you try to strip away all the headers and excess information, leaving the RGB values that you can store.

Many programmers copy paste code. Don't be one of them. Make sure you understand what the code is actually doing.
Check out NEO Impossible Bosses, RTS-MOBA boss rush at http://neoimpossiblebosses.coder-ddeng.com
CecilSunkure
Profile Blog Joined May 2010
United States2829 Posts
December 08 2011 17:03 GMT
#188
On December 08 2011 22:34 ddengster wrote:
@CecilSunkure
Some advice from a fellow DP-Sg student
On http://cecilsunkure.blogspot.com/2011/12/windows-console-game-painters-algorithm.html, whats that pile of hardcoded garbage? I hope you're not putting that into your game. Write a .bmp image importer, and never put that huge array(and in fact any hardcoded stuff) in any source code again.

And don't hardcode 255 as 'transparency'. Maintain a frame buffer with depth buffer values, or do z-ordering per image. Avoid such hardcoding especially in the early stages of your development.

Plus, I'm surprised you have the time to blog given DP's unforgiving schedule. You'll find yourself watching less starcraft as time goes on.

That's all out of the scope of a freshman first-semester game and pretty pointless. If my grade depends on my freshmen game being playable with a certain amount of content, a BMP parser and proper image rendering isn't going to help. Plus, we wrote tools to manipulate large arrays of characters and didn't "waste time" doing it by hand.

If you have proper time management you can do a lot of things while attending DigiPen.
Loophole
Profile Blog Joined October 2002
United States867 Posts
December 08 2011 19:51 GMT
#189
Programmer for 25 years here.

I would suggest reading Andre La'Mothe's books on game programming. He's an entertaining read, and you can learn a lot of the basics from him.
"Fundamental preparation is always effective. Work on those parts of your game that are fundamentally weak." -Kareem Abdul-Jabbar
rrowland
Profile Joined March 2010
United States84 Posts
December 11 2011 02:20 GMT
#190
On November 17 2011 06:31 ClysmiC wrote:
Awesome blog, I'm very interested in developing video games as well. I'm currently in HS, learning Java in my C.S. class. I hear that C is very similar to Java, so I figure in the future I can easily learn C, but I've never really known where to go from there. I'll definitely check out the podcast and your game blog. Looks awesome =)

C is Procedural and Java is Object-Oriented. What you may have heard is C# is similar to Java. Basically, C# is Microsoft's Windows-proprietary version of Java. They copied Java almost exactly, with the obvious difference being some syntax and the .NET libraries.
CecilSunkure
Profile Blog Joined May 2010
United States2829 Posts
January 02 2012 01:24 GMT
#191
So has anyone worked on anything? Would be extremely cool to see some ASCII projects. I'd like to post mine from first semester though I have to wait for cert from school before doing so (legal protection).
Prev 1 8 9 10 All
Please log in or register to reply.
Live Events Refresh
RongYI Cup
11:00
Qualifier 2
WardiTV626
Rex111
OGKoka 109
BRAT_OK 61
3DClanTV 40
LiquipediaDiscussion
Replay Cast
09:00
WardiTV Mondays #68
CranKy Ducklings153
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Rex 111
OGKoka 109
BRAT_OK 61
StarCraft: Brood War
Rain 3515
Hyuk 1709
Horang2 1666
Larva 456
EffOrt 405
actioN 400
BeSt 371
Snow 305
Mini 303
ZerO 274
[ Show more ]
Light 230
firebathero 192
ggaemo 138
Pusan 123
Zeus 118
Sharp 107
Rush 107
Barracks 106
Leta 93
Killer 74
Mind 73
Aegong 56
Soma 56
Mong 46
Movie 43
Sea.KH 39
JYJ 37
sorry 36
910 34
Free 32
JulyZerg 27
soO 25
Noble 16
Yoon 15
HiyA 14
zelot 12
Sacsri 11
Terrorterran 3
Dota 2
ODPixel312
XcaliburYe136
NeuroSwarm85
canceldota78
Counter-Strike
shoxiejesuss970
x6flipin672
allub295
Super Smash Bros
Westballz21
Other Games
singsing1660
B2W.Neo1145
Pyrionflax406
crisheroes281
Gorgc268
Sick66
ZerO(Twitch)9
Organizations
Other Games
gamesdonequick4088
StarCraft: Brood War
UltimateBattle 547
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 14 non-featured ]
StarCraft 2
• Berry_CruncH182
• StrangeGG 41
• naamasc222
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Stunt719
Upcoming Events
Wardi Open
1h 53m
Monday Night Weeklies
4h 53m
WardiTV Invitational
23h 53m
WardiTV Invitational
1d 23h
The PondCast
2 days
OSC
2 days
OSC
3 days
All Star Teams
4 days
INnoVation vs soO
sOs vs Scarlett
uThermal 2v2 Circuit
4 days
All Star Teams
5 days
MMA vs DongRaeGu
Rogue vs Oliveira
[ Show More ]
Sparkling Tuna Cup
5 days
OSC
5 days
Replay Cast
6 days
Wardi Open
6 days
Liquipedia Results

Completed

Proleague 2026-01-11
Big Gabe Cup #3
NA Kuram Kup

Ongoing

C-Race Season 1
IPSL Winter 2025-26
BSL 21 Non-Korean Championship
CSL 2025 WINTER (S19)
OSC Championship Season 13
Underdog Cup #3
eXTREMESLAND 2025
SL Budapest Major 2025
ESL Impact League Season 8
BLAST Rivals Fall 2025
IEM Chengdu 2025
PGL Masters Bucharest 2025

Upcoming

Escore Tournament S1: W4
Acropolis #4
IPSL Spring 2026
Bellum Gens Elite Stara Zagora 2026
HSC XXVIII
Rongyi Cup S3
Thunderfire SC2 All-star 2025
Nations Cup 2026
BLAST Open Spring 2026
ESL Pro League Season 23
ESL Pro League Season 23
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual
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.