Showing posts with label development. Show all posts
Showing posts with label development. Show all posts

Thursday, January 14, 2010

Google I/O 2009 - Writing Real-Time Games for Android

Skip the first 14.5 mins which is mostly introduction and a game demo, but I recommend to watch the rest.

Saturday, September 12, 2009

Tool: PasteBin (collaborative debugging tool)

Every wanted to share a short snippet of code online with others and still preserve the native language formatting?

I have. I been annoyed with how all the nice coloring, indentation and italics got lost when I copied a piece of code from my editor to a web "rich text box".

A friend of mine shared a small function using PasteBin a while back; and now I can't imagine sharing code any other way.

When you paste a snippet of code, you select the language you want to format it in and there is a wide selection to chose from including AS3, etc.

It then generates a link for you that you can send to your friends, e.g. http://flash.pastebin.com/mc95f230.

You can post anonymously or log in so all your posts are linked. Also, anyone can add their changes as a comment.

Wednesday, August 26, 2009

[Concept] Coding Tricks

I was reading an article of Dirty Coding Tricks that game developers use to meet deadlines or simply cut down work needed. Here's a few I found interesting (some of which were comments posted by readers):

"At university there was a team (not related to me, but these guys are the perfect example :P) that made a FPS flash game...

For some bizarre reason, the programmer instead of checking if you was colliding with the wall and not allow you go there, he made the inverse, he checked if there was a wall, and allowed you to move parallel to it...

This sparked a bizarre bug: In crossings, you could not actually cross, only turn to the passage on your left or right.

The deadline was closing, and they had no idea on how to fix it...

Then the team writer fixed the issue! He told the artist to draw a animation of hands touching the walls, and then he wrote in the story that the protagonist was blind and needed to touch the walls to know where he was going.

-Hélder Gomes Filho



Back on Wing Commander 1 we were getting an exception from our EMM386 memory manager when we exited the game. We'd clear the screen and a single line would print out, something like "EMM386 Memory manager error. Blah blah blah." We had to ship ASAP. So I hex edited the error in the memory manager itself to read "Thank you for playing Wing Commander."

- Ken Demarest



I was fresh out of college, still wet behind the ears, and about to enter the beta phase of my first professional game project -- a late-90s PC title. It had been an exciting rollercoaster ride, as projects often are. All the content was in and the game was looking good. There was one problem though: We were way over our memory budget.

Since most memory was taken up by models and textures, we worked with the artists to reduce the memory footprint of the game as much as possible. We scaled down images, decimated models, and compressed textures. Sometimes we did this with the support of the artists, and sometimes over their dead bodies.

We cut megabyte after megabyte, and after a few days of frantic activity, we reached a point where we felt there was nothing else we could do. Unless we cut some major content, there was no way we could free up any more memory. Exhausted, we evaluated our current memory usage. We were still 1.5 MB over the memory limit!

At this point one of the most experienced programmers in the team, one who had survived many years of development in the "good old days," decided to take matters into his own hands. He called me into his office, and we set out upon what I imagined would be another exhausting session of freeing up memory.

Instead, he brought up a source file and pointed to this line:

static char buffer[1024*1024*2];

"See this?" he said. And then deleted it with a single keystroke. Done!

He probably saw the horror in my eyes, so he explained to me that he had put aside those two megabytes of memory early in the development cycle. He knew from experience that it was always impossible to cut content down to memory budgets, and that many projects had come close to failing because of it. So now, as a regular practice, he always put aside a nice block of memory to free up when it's really needed.

He walked out of the office and announced he had reduced the memory footprint to within budget constraints -- he was toasted as the hero of the project.

As horrified as I was back then about such a "barbaric" practice, I have to admit that I'm warming up to it. I haven't gotten into the frame of mind where I can put it to use yet, but I can see how sometimes, when you're up against the wall, having a bit of memory tucked away for a rainy day can really make a difference. Funny how time and experience changes everything.

- Noel Llopis"

[Source: GamaSutra.com]

Saturday, August 1, 2009

Unity - Game Development Tool

Unity (or "Unity3D" as it was first known as). It is currently at version 2.5.

It is a multi-platform game development tool, designed from the start to ease creation. A fully integrated professional application, Unity just happens to contain the most powerful engine this side of a million dollars.

Besides publishing standalone games, it has its own web player add-in (the download is about 9 MB) for browsers and IPhone publishing (at an additional charge). Currently in two versions: Unity Indie (US$199) and Unity Pro (US$1499).

"Unity supports three scripting languages: JavaScript, C#, and a dialect of Python called Boo. All three are equally fast and interoperate. All three can use the underlying .NET libraries which support databases, regular expressions, XML, file access and networking.

Scripting is frequently thought of as limited and slow. But in Unity your scripts are compiled to native code and run nearly as fast as C++. You get the fast iteration times and ease of use everyone loves about scripting languages."

[Source: Unity3D.com]

That seems very believable after viewing their Tropical Paradise demo.

Also, according to some bloggers, it is apparently easy to convert a game written with Papervision3D (Actionscript) to Unity. Something which they mostly do so as to publish their games to the iPhone.

Something to comeback to once I made something with Flash.



Update:

Here are some reviews/comments on Unity:
DevMaster.net - Engine details of Unity
StackOverflow.com - What’s the best indie game development environment?

Thursday, July 9, 2009

Flash Kit Community Forums

I recently been spending a lot of time on the Games sub-forum on the Flash Kit Community Forums.

There are lots of existing and new Flash developers discussion making games there.

Check it out if you have time.

Saturday, April 25, 2009

PopCap Developer Program moving to SourceForge

PopCap has both online and download-able games. Their most popular is probably Bejeweled.

They had previously released the framework used for their download-able games (built with Visual C++) for anyone to use free of charge.

Sadly, they are discontinuing support for this and hopefully moving it to SourceForge as open-source.
"The PopCap Developer program has had a good run, but we've been unable to spare the developer time required to keep the Framework (and related tools) up to date here, and it doesn't make sense for us to publicly support an increasingly old version of it.

That being said, everyone who is currently using the Framework may continue to do so, and we plan on making the Framework available on SourceForge so the developer community can continue to have access to it and even support and enhance it as they (you) see fit.

Details of the SourceForge move will be forthcoming, but the plan is to move toward shutting down this site on May 1st. If anyone is interested in stepping forward to volunteer to host the message archive as a knowledge base, please let me know."

-Brian Fiete
CTO & CoFounder, PopCap Games

[Source: developer.popcap.com]
It's nice to see companies so open with their technologies.



While on the topic of PopCap, I would like to talk about their recent move to add their games (at the moment on Bejeweled and Peggle) into another game, World of Warcraft (WoW) as add-ons.

Their first attempt, Bejeweled was a direct port that allowed you to pass time in-game and has some nice extras like keeping highscore for you, your friends and your guild.

Their second attempt, Peggle has a lot more integration with WoW like using WoW's dueling feature to start a two player Peggle game, distributing loot based using Peggle, and adding WoW concept of talent trees into Peggle.

Games-within-games is nothing new, but having another commercial companies making the game-within-game is new. PopCap is probably doing this as a form of in-game advertising and hoping to tap into WoW's 11 million active subscribers. I am curious as to what this will lead to.

Saturday, April 18, 2009

More user-created content in City of Heroes that developer-created content

User created content in games has been getting more noticed from developers in recent times.

I think it was the Counter-Strike that was the first to make me aware of user created content. This FPS had tons of user created maps, models, weapon skins and mods available for it. The funny thing is, that it itself was a free user created mod of another game, HalfLife.

Valve Software marketing director Doug Lombardi has told GamesIndustry.biz that consoles must embrace user-created content.

"I would argue that it's the biggest component those guys have to get over if they want online to matter," said Lombardi.

"Half-Life 1 was okay as a multiplayer game and Team Fortress Classic was really good, but Counter-Strike kicked both their asses no question. And that came from a kid going to college in Canada and another kid going to high school in New Jersey, who had our code and thought it would be cool to play our game"

[Source: GamesIndustry.biz]

After reading the next article, I hope a lot of people mindset on this will change. This is no longer a just a potential. It is already here and now.
Only one day after NCsoft released their player-created content focused Issue 14: Architect update, and players have already crafted more than 20,000 mission arcs.



In a letter to the community posted on the official City of Heroes website, Matt "Positron" Miller revealed that within the first 24 hours of the new updates' existence, players in both hero and villain factions had created more than 3800 story arcs, each consisting of five missions a piece - more content than the development team had created during the game's entire existence.

Players have been busy trying out missions and critiquing them in the forums as well. Out of the more that 20,000 arcs now available in game, 2,860 of them have been rated 5-stars by players, with only 582 rated at 1-star.

[Source: Kotaku.com]

The sheer amount of content is outstanding; and all done in 24 hours. And with a rating system in place, that helps ensure quality remains.

Games soon may be like Second Life (a virtual world where users create almost all of the content: locations, models, activities and economy). Already games like Little Big Planet (levels), World of Warcraft (user interface), The Sims are heavily using this.

So if you make a game, try to consider this and include some sort of Map Editor.

Why start this blog?

Some friends have ask why I have just started this blog about Indie Game Development in Singapore.

After reading some success stories, I have recently decided to give it a try; not for the money but simply because it is something I think I will enjoy doing.

I have been interested in gaming, and not just computer gaming. I have enjoyed playing card games, board games, table-top war games, brain games... you name, I think I played it.

When I was schooling, there were no available game-related courses, so I went into the next closest thing, IT. Got a degree and worked in a few IT companies (including NCS, Mercury Interactive, HP) doing programming, technical support, etc. Nowadays, there are private schools and even universities offering courses in computer game design, both from the computer science and art perspectives. I envision courses from the business perceptive to appear in the next 10 years, as the gaming industry is rapidly becoming more of a serious field of business.



Next question these friends of mine ask will usually be either why or what is Indie? This is a short for for independent, which means without the financial support of a publisher.

Most computer games are so huge and expensive to develop now, that they require huge amount of funding from a publisher (like Electronic Arts, Activision, THQ) in return developers get payed for work done and earn royalties, while the publishers keeps the rest of the profit (which is sometime used to offset games that make a loss). As such, some decision as when to release, what to focus on, etc are out of the control of developers.

Being independent "in my opinion" allows more creativity when designing a game, there is less pressure to keep releasing sequel after sequel just to keep profits high. Also, joining or starting up an indie game company should give a higher chance to be involve in the design process, which is really what I am interested in.

While being involve in making a game by following instructions handed down to me is something I would still enjoy, I would enjoy it a lot better having a part in the game design too. Thus, I am now searching to either join or start up an indie game company here in Singapore