开源日报 每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,坚持阅读《开源日报》,保持每日学习的好习惯。
今日推荐开源项目:《元素字符串 smilesDrawer》
今日推荐英文原文:《10 Game Jam Strategies》

今日推荐开源项目:《元素字符串 smilesDrawer》传送门:项目链接
推荐理由:学过化学的话都知道化学里的分子结构简直就是各种各样,想要给他们每一个都单独画一张图得画到猴年马月。这个 JS 项目则与使用字符串来描述分子结构有关,项目提供了解析字符串并且画出对应图形的功能,动态生成可比每个分子画一张图存下来方便多了。
今日推荐英文原文:《10 Game Jam Strategies》作者:Christian Behler
原文链接:https://medium.com/better-programming/10-game-jam-strategies-92c88c81f834
推荐理由:制作游戏的十个步骤,而你只有两天时间

10 Game Jam Strategies

What if you had 48 hours to build a video game?

Game development is a lot of fun. But finishing a game is extremely time consuming and difficult. This is why game jams like Ludum Dare are great.

When you only have 48 hours to create a game completely from scratch, you will actually finish a game and it feels very rewarding.

You go through the complete process from the idea through the implementation to the final product, including all aspects of game development like coding, graphics, art, sounds, balancing, polishing, and more.

I haven’t finished a real game yet. But I have finished all of my eight Ludum Dare entries. Here are some tips and strategies for participating in a game jam that have helped me place 18th of 630 in the last Ludum Dare.

1. Sleep

When you participate in a game jam like Ludum Dare that only takes 48 hours, you may feel tempted to work through the night and sleep very little or not sleep at all.

Don’t do it!

Sleep is important. You need to be well-rested to do good work. Working through the night while fighting tiredness won’t result in a lot of progress anyway.

Also, try to stick to your normal daily routine. Eat regular meals, take breaks, and go outside to get some fresh air. Fewer hours of concentrated work are better than more hours of unfocused distractions.

2. Idea

Think about your game idea before the event starts. Some game jams announce their theme early, which gives you time to create a fleshed-out plan. Others, like Ludum Dare, only announce the theme when the event starts.

Even without knowing the theme, you can start to think about some ideas beforehand. Maybe you want to create a platformer? A strategy game? Or is there a new design pattern you want to experiment with?

Most of the time you can come up with a rough idea early and then adapt it to the theme when it is announced. If you only start to gather ideas when the event is already started, you lose valuable time.

3. Plan

Even when you have gathered a few good ideas before the event starts, you should take some time at the beginning of the event to fine-tune your idea to the theme and create a plan. Not just in your head. Write it down on a piece of paper or use your task scheduling program of choice.

The plan should include all major game mechanics and the most important graphic and sound assets you will need. Try to think about the order of the tasks as well to make sure you do them in a sensible order. This will give you a rough structure to follow for the event.

However, when you are a few hours in and the plan doesn’t work out or you have new ideas, just change the plan. There is no boss or customer forcing you to stick to the original idea. When you have a better one, just go for it.

4. Scope

One of the trickiest challenges in a game jam is the scope. How do you choose an idea that you can reasonably finish within 48 hours? It ultimately comes down to your abilities and experience.

For your first game jam, choose the simplest game idea you can imagine, one that you know for certain you can finish within the given time. In my first Ludum Dare, I literally made Snake. When you finish early, you can always add more features. But because of the deadline, you cannot finish late, and submitting a half-finished game isn’t great.

5. Time Management

When you only have 48 hours to make a game completely from scratch, time management is the most essential challenge. As mentioned above, you should always prioritize sleeping, eating, and going outside. But that still leaves you ten to 12 hours per day to work on your game. What’s the best way to distribute your hours?

If you have never created a game before, you may think programming takes up the majority of the time; it is called game development after all. However, even for small game jam games, programming takes up less than 50% of your time, and it’s a lot less than that for big AAA games.

For a two-day event like Ludum Dare, my goal is to have a playable game before the end of the first day. That includes all major game mechanics and at least programmer art for everything. And because you are probably not going to produce extremely detailed and high-quality art assets for Ludum Dare games, that programmer art may already be the final version.

That leaves the second day for all the other miscellaneous tasks, like sound effects, music, instructions, balancing, and polishing, which add up quickly and take up a lot of time.

6. Music and Sound Effects

Music and sound effects are very important for the overall quality of your game. They have their own judging category in Ludum Dare, but they are much more important than that. They affect the overall impression of your game. Music and sounds convey a lot of emotion and atmosphere.

You don’t need to be the next Mozart to create nice music for your game; I certainly am not. There are many procedural music generators like Wolfram Tones that can be used even in the stricter Compo rules of Ludum Dare. With some experimenting, you can create nice background tracks within a few minutes.

And the same thing goes for sound effects. With bfxr or jfxr (a JavaScript port of bfxr) you can easily create procedural sound effects, which are OK for many situations but have some limitations. However, your mouth has no limits, so when you cannot create a procedural sound effect, just make weird sounds into your microphone and add a few filters in Audacity. It works surprisingly well.

7. Instructions/Tutorials

Towards the end of the event, when you have implemented all the mechanics and finalized the graphics, make an effort to create the best instructions you possibly can. It doesn’t matter if you have made the perfect game if nobody understands how to play it.

The best way to teach the player your mechanics is an interactive tutorial that introduces your mechanics one by one and lets the player try them out before continuing. However, an interactive tutorial takes a decent amount of time to make, time you may not have left to spare in the final push.

Another good alternative is a pop-up tutorial. When the game starts, show one or two screens that list the controls and explain the mechanics, ideally with screenshots next to them.

Always try to include the instructions in the game itself. Many participants only have the instructions on the website of the event, and it isn’t very convenient when you have to tab away to check the instructions or read a multipage novel before starting. Just add a few sentences of flavor text and a short list of the instructions on the website, but there should always be instructions within the game.

8. Balancing

Balancing, the bane of every game developer’s existence. Depending on the game this may be more or less difficult, but every game requires at least some of it.

You need to get the difficulty just right so the game is challenging for the player while also possible to beat within ten minutes or so. And in a big game jam like Ludum Dare, there are players of all skill levels participating: Some may be platforming gods, while others fail to jump over the smallest gap. Just because of the skill gap between the players alone, it’s almost impossible to find a good balance.

You also spent the past 48 hours creating and extensively playtesting your game, so you probably became pretty good at it, which makes it really difficult for you to judge how a new player would fare in your game. If you have time left and — much harder to come by as a game-developing nerd — friends, you should let them try an early version of your game, observe how they do, and ask for their feedback.

9. Polishing

Adding more exciting features to a game is fun, a lot more fun than polishing your game. But when the event is getting closer to the end, you have to prioritize polishing anyway.

Play through your game multiple times and write down all of the little things that are rough, behave inconsistently, or are missing quality-of-life improvements.

It’s the little fixes that will make your game shine. A simple hover effect here, a small animation, additional instructions, more information, a second sound effect for something that happens very often. The list goes on.

There is a saying in game development that certainly holds true in game jams:

“An average idea done well is better than a great idea done poorly.”

And that’s what polishing is for. At some point, you have to be content with your idea. It probably wasn’t a completely novel idea that will change the industry forever. And that’s okay. Just take your average idea and make it shine.

10. Code Quality

Even in a two-day game jam where you rush to get everything done in time, you should try to focus on good code quality, even though it’s impossible to maintain for the whole event. At some point, you just want to hack something in there quick and dirty, and that’s fine. But in the beginning, you should try to write good code.

The longer you can maintain good quality, the easier it will be to add and change things later. It has happened to me many times that I didn’t implement something properly in the early stages only to realize that I needed that particular functionality later on. So you might as well train good habits and do your due diligence. It probably only takes a minute early on, but it might save 15 minutes later. Also, some game jams like the Ludum Dare Compo require you to share your source code, so it’s always nice to keep it clean.

Game jams are an awesome way to test your game development skills. Within a limited amount of time, you go through the whole process of making a game, all the way from the idea to the finished and published product.

There is no universal best way to create a game jam game. These are some steps I am using in Ludum Dare events, and some of them may be helpful to you. But as always, the best tip is this: Just try it yourself. Start with a very simple idea, and you will realize that even finishing a small and simple game is a very rewarding achievement. And after a few events, you will find the steps that work best for you.

The nice thing about game jams is that the placement doesn’t really matter. Some of your ideas will work out better than others, and you may rank higher or lower. But what it’s really all about is having other people play your game and leave feedback in the comments that you can learn and improve from.
下载开源日报APP:https://openingsource.org/2579/
加入我们:https://openingsource.org/about/join/
关注我们:https://openingsource.org/about/love/