• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.

Archived

This topic is now archived and is closed to further replies.

evolutional

Rise and fall of the hobbyist game programmer

66 posts in this topic

Quote:
Original post by meeshoo
a game without the newest technology must have an extreme gameplay so players don't abandon it after a single hour of play.


As you say, we have a choice - be the best in technology or the best in gameplay. If this is the case then the hobbyist game programmer is on the way out, at least the lone gunners. There's no way we can focus on both elements and be successful, unless we are lucky and get a great team.

Quote:
Original post by meeshoo
u must spend a lot of time to design an engine, to be very modular, u implement a core that will be very independent of what you will plug in(can execute anything, best done by using a general purpose scripting language).


This is one thing I've learned from the COTC series and one thing that's resonating throughout this thread. We have to establish a core base of libraries that are generic enough to be used anywhere, but can be replaced without a headache.

Quote:
Original post by meeshoo
that's why the design is very important.


Does that mean that as hobbyists, one of our main failures is the failure to design our games? The holistic control we have can make us lazy and prone to shooting off at tangents on a whim. There's no schedules, to pressures, no formal guidance for us to follow in our game - we can do what we want, when we want. That's great for innovation, but often proves dangerous as the code entropy fights us.

Quote:
Original post by meeshoo
execuse my bad english

Your English is perfectly understandable :)

I'm thinking now that there are so many areas we have to cover and so many things we have to fight, I have to pose the question - where will the hobbyist programmer be in the next few years? Will it be feasible to create games that people want to play for more than an hour or will we have to forge teams and adopt a professional mindset in order to acheive our dreams?
0

Share this post


Link to post
Share on other sites
I found this discussion very interesting. I would like to offer up my own game for a case study. There is a 90 second trailer of the game in action available on my website for you to look at and tell me what you think of both our production values, and our engine. The game was written "from scratch" in that we wrote our own engine, and I did all the art work. It is fully 3D, fully multiplayer with up to 16 players, and was made by 2 guys in thier spare time. We now have 4 guys involved, as I have found a musician and sound designer in the last 4 months. Please, tell me what you think and how you feel this fits in the this discussion.
www.reactorinteractive.net
_________________
Drew
0

Share this post


Link to post
Share on other sites
Quote:
Original post by rypyr
Are you sure you're not slipping back into engine design here? Just suggesting you check yourself again and refocus on completing jsInvaders...sorry to butt in there.


You're not butting in ;)

Yes, the quote from the blog was correct. The difference here is that previously, I was trying to design a generic 'glove fit' engine that would encompass many generes of games.

The jsInvaders game is *very* focussed and small. It's *not* the software engineering feat I was attempting before. As such, the individual components of jsInvaders aren't portable between projects. But this is where it gets interesting. jsInvaders is totally scripted with the level content pulled from XML files. The game is toally tied into a very basic top-down shooter (textured 2d quads) and probably wouldn't stand up to being a 'real' game. The interesting thing I've found is that because it's scripted, I can very quickly modify the scripts and the textures used to create a different top-down shooter. As a result, I could probably use it to create my initial Manta-X protoetype. As I said, I could potentially develop jsInvaders further, but this remains to be seen.

I guess what I'm talking about here is creating a game with scripted features that has unintentionally alowed be to take things further and be used for something other than it's original purpose. Whereas previously, I was focussing on creating an 'engine' over a game and failed miserably. I wonder if this is how some projects work out?

Thanks for yout comments.

[EDIT]
I posted this in a PM to rypr - I think it gets my point across better :)

When I was creating the Manta-X game, I was very keen to create an engine - something that I could reuse over and over in many different game types. As a result, I was trying to cover as much ground as I could in what I thought would be the most professional way. Many things were abstracted out (probably needlessly) and I was trying to make things as generic as possible. Even with the overall Manta-X game in my mind, I still wasn't doing enough to focus my efforts towards that project. I was focussing on creatin a technology, not a game. I'm not sure why, perhaps I felt brainwashed by the community as a whole focussing their efforts towards engines.

So with jsInvaders I sat down with a very specific goal - to create a scriptable space invaders style game. As a result, I had a very focussed project and I was able to commit myself totally into it's development (it's about 60-70% done). Rather than spend weeks making the core engine with no real results to be seen, I was able to get the basic jsInvaders prototype up within a week an see the results. Something that took me by suprise, however was the fact that because the game is scriptable and uses XML to load it's data, I can very easily change a few files and make the game behave very differently. Space invaders becomes galaga, which becomes a different top-down shooter and so forth. Not exactly what I had in mind for my Manta-X game, but because of this I could make a quick prototype with hardly any additional effort. In essence, I have inadvertantly created an 'engine' (although very basic) from a focussed game idea.

In a couple of months, after jsInvaders is complete, I could potentially start Manta-X (again) from the core of jsI - allowing me to see results immediately. Or I could start again with the same idea, create a focussed game without the general idea to make it an engine.

As you say, it seems to contradict what I was saying, but I think the difference is that rather than focus my efforts on making a generic engine, I indavertantly created something I could use again by becoming very focussed in a new area. The difference was that I had a different mindset and adopted a totally different methodology.

As Chris Hargrove said, things improve over time - you eventually learn essentially by accident, taking things that were right and scrapping the things that were wrong. As a result, you get better. I think that's starting to happen with me.

[Edited by - evolutional on July 3, 2004 4:20:00 AM]
0

Share this post


Link to post
Share on other sites
Quote:
Original post by DrewCaliburClark
There is a 90 second trailer of the game in action available on my website for you to look at and tell me what you think of both our production values, and our engine.


and...

Quote:
Original post by DrewCaliburClark
The game was written "from scratch" in that we wrote our own engine, and I did all the art work.

We now have 4 guys involved, as I have found a musician and sound designer in the last 4 months.



Needless to say that yout game looks fantastic - the music seems very star-wars like though ;)

I think you could contribute well to this discussion - you mention having a team and creating yout own engine. Maybe you could offer up some information about how you went about designing your game?

Were you aiming from the start to get it published? Was it a hobby project that evolved into something bigger?

When creating yout engine, did you attempt to create a technology that could be used everywhere you could, or did you specifically design the features and capabilities for this game?

Taking into account the comments made by Chris Hargrove, what do you feel you've learned from this experience? How would you change it for next time? What would you keep the same?

Do you have any advice for us who needlessy overdesign our software and fall over so many times?

Thanks :)
0

Share this post


Link to post
Share on other sites
I just read the first post and honestly I just skipped over everything else, so forgive me if I am going off topic (or back on topic).

When I create a game I initially get a very basic storyline. Then I decide all of the interactions that are necessary to fulfill the initial concept. Usually by then I have countless crazy ideas, that are clearly set far above my reach. Luckily I have sleeping trouble so at night I just open up a new package of paper and work out how my concepts can be recreated using more realistic methods. I take the most crazy impossible ideas first and I work out how I can create them or alternate methods that create an almost identical outcome. I am proud to say that I have yet to have an idea that I was unable to simplify to my ability level.

I have knowledge in multiple languages, but at the rate that ideas come in to my mind I don't bother with 3d graphics or other time consuming benifits. I try as hard as I can to create all of my games in internet languages. This allows creating an entire game inteface to take very little time (with simple HTML and javascript). Although, my prefered language is perhaps a bit weak in the opinion of many others of all of the languages which I know of, javascript is my favorite. (I love it even more than C/C++)

I make my games for fun and it isn't only playing the game in the end that makes me enjoy it, but also the whole problem solving process (the problem being: How can the features that I'm aiming for be achieved in a realistic way using an extremely basic set of functions?) I get more pride in taking a complex and "impossible" 3d game idea and turning it into an easily doable project without losing the game's effect, than having a bunch of completed games at my fingertips.
0

Share this post


Link to post
Share on other sites
Evolutional, I'd be happy to share any thing you'd like to know about our experience. Take a seat, its story time.
This project originally began when a group of about 5 guys approached me in college about making a videogame. They had heard that I was majoring in multimedia production and hoped to go into the game industry after college. I had some experience with game creation before getting to college, and it was key to this whole project, because of course, the game they planned to make was huge MMO-type perpetual universe where a player could go anywhere/do anything. The first thing I did after meeting them, was make it clear that I would not be involved in this type of project, since the odds of it ever reaching completion were nill. I felt, that the key to making games as a hobbyist, is to be honest with yourself and the scope of your project. I told them to drastically scale down thier vision to something that could actually be completed. So many people start out to make a game, and try to make something they can't realistically complete, which is a huge team-killer. Well, our project fell apart anyway as soon as I began to do some real project management (my major was production and project management, and now my day job is an IT project manager) because the other members saw that making a game is not all fun and good times, but it is hard hard work that takes real discipline and time management, mixed with a good dose of sacrifice. Well, one guy stayed with me, and I soon discovered he was a gifted programmer (HanSolo here on Gamedev). Once we saw the pace he could work at, we did expand our vision a little, to something we thought could actually pass as a decent demo of a publishable title. Our goal is absolutely to go mainstream and leave indy status behind. We are entered in several major contests, including this year's IGF, and have sought to leverage some corporate contacts that we had at Caligari and elsewhere. It has now been 3 years since my programmer and I got serious about this project, and hopefully soon we will see some fruits of our labor. We are very serious about making games, and have made countless sacrifices over the last 3 years to see this project get finished. Good scheduling and self-imposed deadlines have been the key. Once we had something worth showing off, getting a few more people on board to help finish this off was easy. Our musician from www.gamenoise.com is fantastic, and finding an additional programmer to take over some of the "grunt work" has been a welcome addition as well. So far, everyone has kept the milestone structure I've setup on schedule, and I've done my best to keep everyone clear and on-track with our vision. We have legal representation now to ensure the IP rights of everyone involved, and to ease any worry from team members over going very public with our demo and ideas. We have found several LAN party organizations to schedule beta-testing events around us, and thier feedback has been invaluable. By the end of this summer, we will go public with beta testing, and give the LivePitch contest a shot as well, to try and get in front of some real potential publishers, and get our feet wet in that aspect as well. There are so many aspects to this project that I have had to manage that many people take for granted. Its not enough to have a great idea, and even make a playable game around it. You have to have a vision that you believe in, can market with enthusiasm, and most important, be able to sell your dream to others and make them share your vision. Everyone has ideas and games they would love to make, so getting everyone involved to share the same vision and goals has been key. We'll see this fall what we can make of it. I hope this helps, and I hope its relevant to those who are frustrated by the difficulties of pulling an indy team together and getting them motivated to accomplish something more than themselves. sorry for the long post, but this is actually the short version. Ask anything you like, I'll do my best to answer,
0

Share this post


Link to post
Share on other sites
Hi Evolutional,

To answer your questions about our engine:
This game engine is actually my first major programming project other than high school C++ type of work. I have always had an interest in programming, but even more so, I have always wanted to make games. This has been a learn-it-as-we-go experience for me, but in the end I am very proud of the engine I have created. It is very extensible, albiet in my own inexperienced way, and our core features (netplay, sound, music, input, graphics, etc) could service most any type of 3D game. We are lacking some features at this time, such as level geometry and shadows, though these will be added in the next 2 months. We have kept our schedules, and disciplined ourselves and have learned so much, and we owe it all to a driving desire to make the kind of games that we would love to play.
Most of our game's features come from our original vision: To make a fully multiplayer space combat game that would appeal to the First Person Shooter player. Keeping with this vision, we designed a twitch based space game, that would have depth, with ease of play and very little learning curve. We wanted this game to give FPS players a change of pace, while keeping what they love about deathmatch and team play shooters in tact. Looking at our project now, I feel we have kept our goals, and our schedules and the final product is something that fulfils that vision very well. We will be spending the next few months trying to take this vision to the industry.

[Edited by - HanSoL0 on July 5, 2004 7:15:15 PM]
0

Share this post


Link to post
Share on other sites
Thanks for your response guys.

I'm interested in this section of what Drew said:

Quote:
Original post by DrewCaliburClark
I felt, that the key to making games as a hobbyist, is to be honest with yourself and the scope of your project. I told them to drastically scale down thier vision to something that could actually be completed...

Well, our project fell apart anyway as soon as I began to do some real project management (my major was production and project management, and now my day job is an IT project manager) because the other members saw that making a game is not all fun and good times, but it is hard hard work that takes real discipline and time management, mixed with a good dose of sacrifice.


Quote:
Original post by HanSoL0
We have kept our schedules, and disciplined ourselves and have learned so much, and we owe it all to a driving desire to make the kind of games that we would love to play.


That seems to resonate with something I touched on before - I mentioned that being a hobbyist, you have full creative control over your project and as a result, you can often shoot off on a tangent and become lost. I did this with my 'engine' design instead of the game. But I think that it's starting to highlight the fact that now, even hobbyist game projects need managing. It was easy to plod along with creating yout game, but now we need to finely plan and manage the project in every capacity.

A major management decision (I've been involved in Project Management before, too) is to ensure that the project is correctly scoped out in terms of the requirements and the capabilities of the team. So I'm guessing that now, in this environment of bigger, flashier games, we need to take on more of a managerial role in our projects - even if it's just one person completing a relatively small project.

I sincerely wish you guys the best in this project, I like the way you're approaching things and it's certainly helped me think - as has most of this thread. I hope it's helping other people too.
0

Share this post


Link to post
Share on other sites
I don’t know if this is relevant to your discussion but here’s some of my thought to the case. I also have the problem of revising the engine over and over again. And one day, I came to realized that, it is not ‘game programming’ that I’m interested but I’m simply addicted to it. Literally. That is, I seem to be using ‘solving game programming problems’ as a drug to get high. To archive a short term happiness and excitement that many of us are looking for unconsciously. As in the feeling of winning gold medal after a long losing streak. I came to realize that I had the ‘feeling’ every time I solve a component that I set to archive for the engine. But as the drug addicts, the next dose will need to be much stronger for me to feel any change. So, after overcoming depression (side effect of a sudden happiness), I look at the big boys and say, I want that piece in my engine. So I set out for a painful and long straggle and research to accomplish the task. I like this ‘pain’ unconsciously because unconsciously, once I archive that ‘piece’, the high will be so much rewarding.

You see, speaking for myself, my theory is that some of us do game specific programming because it is the only programming industry that allows us to get the ‘fix’ once in the while. And, I came to realize it is not about releasing the game or making lots of money but just getting the reward after a long and painful seek. After that ‘awaking day’, I was sure that I’m a hobbyist and I would never release a complete game since I’m only seeking what I can’t achieve. That’s the only way I can get the fix.

I think to overcome the notion of hobbyist, you can’t think of game programming primary as an art but, as many implied, as a business. We must see it as a gold mine and just ‘take’. But many of us are not here to just ‘take’. I think that’s part of the problem.

(Btw, I’m not substance abuser. But if you think about it, we are all basically addicts addictive to ‘happiness’. And there are just many way to achieve it.)

[Edited by - JohnSKX on July 7, 2004 2:03:26 PM]
0

Share this post


Link to post
Share on other sites
Quote:
Original post by abstractworlds
Quote:
Original post by Run_The_Shadows
You work for years trying to learn what you need to know to get at the /start/ of creating enjoyable games, and by the time you have anything to show for it, you're another year or two behind the technology of the times.


This isn't always a bad thing. If your aim is to produce a downloadable game for the casual gamer then this should even be one of your design goals. Another design goal for this market is a quick download, which usually rules out too much fancy media in your game, so don't worry about your lack of FMV cut scenes, etc.

Casual gamers don't necessarily have the fastest PCs, the latest, fastest and largest memory graphics cards with the latest drivers, the latest versions of DirectX etc. Designing a game for your target market will hopefully mean that more people can enjoy your game, and you don't have to worry about being behind the times with the technology. Some would argue that downloadable games for casual gamers should be even more than 2 years behind the times in terms of the PCs they can run on. Some of your target market may have bought their family home PC 4-5 years ago, perhaps one that wasn't even a hot gaming machine when it was purchased new.

With this area of the market, the minute you start adding something fancy to your game (e.g. DX9 shaders), or start trying to imitate the best AAA retail games effects, you will either fail, or even if you succeed, you will then rule out a large percentage of your target market who dont have the PC specs to run your game anymore.

For downloadable games for casual gamers just remember that it is your intended audience of casual gamers that you are trying to impress, not necessarily the fellow developers here at gamedev.

Excuse my rant about downloadable games for casual gamers, but I do believe that this is one of most feasible game market sectors that hobbyist game programmers can aspire to. You make a simple game, set up a website, promote it on download sites, you get a good feeling knowing that people around the world are playing with your creation, if you're lucky you get some good feedback, if you're very lucky a few people might show their appreciation by purchasing your game. What more could you ask from a hobby?


test
0

Share this post


Link to post
Share on other sites
how appropriate that i respond to this thread. you see, i am the fallen hobbyist programmer.

after reading this, i have been thinking about trying programming again. but first, an analysis of where i went wrong.


first of all, kudos to evolutional. you know what you're talking about. thats the spot i used to be in. i was just starting with C... i had a fairly good grasp of the language itself. i screwed myself over though when i tried to start doing projects with graphics. i tried to learn it all at once and make a game in the meantime.

needless to say it didn't work to well.

i moved out of programming and more into game design. this wasn't a bad move. you can have the best programming skills in the world, but a game without a good design is just as pointless. now that i've become more educated in ways of story and design, i'm returning to the programming aspect.

if the intent of this thread was to spur former programmers back into action, mission accomplished.

thanks, guys.
0

Share this post


Link to post
Share on other sites
I'm not really sure that this thread had a point when I originally posted, if anything I wanted to feel as if I wasn't alone in thinking I was over complicating my software. I started to think of ways I could work in order to avoid the problems I was having (project spiralling out of control, losing focus, etc). I'm still not positive I can avoid such problems, but at least I've recognised that fact that I will never be up there with the greats and should just do things for fun and for myself.

With that in mind I started a new game, leaving my old trouble-spot on the back burner for now - it's going ok, we'll see if I ever 'finish' it, but it's already as playable as my other failed attempts and doesn't suffer from any of the overengineering problems.

So to get to my point (again, I like to ramble), I think I started this thread with a mind to kicking me back to action and hopefully allowing others to see that it's not all 'engine, engine, engine' in the terms of making something that will impress the world and be used by every man and his dog - but as hobbyist programmers we have pretty much free creative freedom to exploit the game areas we want. We don't have to bow down to market pressures, we don't have to make games that push back the boundaries of technology - we can make the games we want, when we want to. That's a great feeling ;)

I'm glad you've started programming again - I hope that you have more success in it this time round, perhaps the discipline gained from your design time will be beneficial to you (a big failure of hobbyists like us is that we don't 'design/plan' our games because of the very freedom that allows us to make them).

Good luck ;)
0

Share this post


Link to post
Share on other sites
Quote:
Original post by evolutional
I was reading this ancient article on Loonygames and it got me thinking about how things have changed so much since I started programming.

<SPAN CLASS=smallfont>quote:

Professional game programming and hobbyist game programming have become widely separated. And yet people don''t seem to realize this, or they seem unwilling to acknowledge it. The bitter battles on Usenet about the importance of C++ and other hot topics: those are the concerns of people who have to follow the accepted standards for professional programming in team environments. They have different concerns than the after-hours game designer. Some hobbyists don''t want to admit they are hobbyists, they try to follow the professionals, and they are never heard from again. Oh, they''ll write part of a hot 3D engine and get all the "in" opinions, but except in very rare cases you never see their name on a finished game. And that''s too bad, because when you''re working on your own you can be creative and different and do things according to your own vision.

That''s the only reason for being a hobbyist in the first place.

</SPAN>


So, apart from Usenet becoming less popular, exactly what has changed?
0

Share this post


Link to post
Share on other sites
DrewCaliburClark, I just read your reply. Thanks for taking the time to post that; we could all take a lesson from you.
0

Share this post


Link to post
Share on other sites
I'm in similar shoes. I started work years ago, and to date have nothing to show for it. Game wise, at least.

My problem is I end up trying to make Warcraft IV when all I should be trying to do is make Warcraft I! Incidentally, does anyone remember Warcraft I? Heh heh.

So yeah, you're not alone. There are plenty of us out here who find ourselves reaching too high, striving for too much "tech", that our main goal is lost by the wayside. The goal of making a playable game!

With that said I still want 3D terrain in my Warcraft I clone....

;)

Take care.
0

Share this post


Link to post
Share on other sites
Thanks DevDan,
I almost think this thread should be a sticky in the help wanted thread. I think a lot of posters there should read through and think about some of the issues brought up here by evolutional and others.
Reaching the blessed goal of an actual completed game is much more difficult than most new comers would believe.
*sigh* is any game ever truely "finished" though? Or do we just choose a point where you have to say "good enough, is good enough"?
0

Share this post


Link to post
Share on other sites
Whilst I do agree with oyu Drew, I remember what I was like when starting a new project in the early days. I wouldn't let anyone or anything convince me that I can't achieve my dream. I was thinking that 'I have the idea, why can't I make it reality?'.

I think one way to truly learn is the 'hard' way; that is starting out and failing a few times, having to pick yourself up and try again. I'm also seeing that even though we have small projects on the go, a lot of us are lacking the management discipline in keeping the project on track and correctly prioritising things. One thing you said Drew was that we have to release it at a certain point, even if it's not done - again, that's a management decision.

I think this is especially important in commericial enterprises, yet us hobbyists are perhaps spoiled by the fact that we can get away with many beta releases before we consider it done. We really are running on two entirely different tracks; from development processes down to even target audiences - many people these days don't want to play 'crappy freeware games', which puts us hobbyists into a difficult place.

I wish those that try to straddle the two fields the best of luck, but I think that I am finally content with calling myself a hobbyist and not worry about trying to compete in a market in which I wouldn't belong :)
0

Share this post


Link to post
Share on other sites