Have a clear success goal for your game, it doesn’t have to be money, it may be things like Social Impact (measured by feedback received by people on how your game changed their lives), or number of players.
Use your personal experiences to craft games that are different from the mainstream.
Indie games can focus on a single mechanic providing a shorter experience than commercial games which must provide enough content to justify a high price tag.
Before embarking on a game, evaluate you have the resources to complete it (don’t aim too high), and there is a public for it (aim somewhere).
Push technical boundaries, do things differently using existing technology (for example alternative controllers, or tweaking existing engines like Unity or Unreal in ways that are not commonly done). Take a license to experiment.
Get inspired at events like alt.ctrl at GDC, AMAZE, Fantastic Arcade
Look for alternative funding sources. Look for the niche that can support you. If your game has a social impact you can rent it to Art Expos or find persons that might be interested in sponsoring you.
This year, for the first time, Comic-Con Colombia was split into two events, the first one took place in June in Bogotá (Capital of the country), and the second part is taking place November 16 to 18 in Medellín (my hometown, fabled city of Eternal Spring).
I was able to assist there on its first day, aiming to attend some interesting talks based on their program. Given my previous year’s experiences with the talks I was ready to be disappointed with the organization; unfortunately, it went even worse than expected. One of the issues they had past years was people couldn’t find out where the conference rooms were; well, this year I was hopeful it was going to be better when I saw this sign at the entrance.
Unfortunately, the track ended abruptly ahead in the main pavilion, leaving you clueless as to where the talks took place. After wandering around aimlessly for a bit, I managed to find the rooms in a corridor outside the building, devoid of any indications.
After completing the quest of finding the rooms, I found out the first talk was not going to happen due to the rooms still being set up, and also because (unsurprisingly) only the speaker had managed to arrive (and even he had some difficulties). We were not alone in this, of course, during the day I saw stickers pasted on the program poster, asking for directions.
The second talk was also canceled for similar reasons which discouraged me to try to attend most of the other talks for the day. Almost by the end of the day I attended one about Science Fiction which was ok, and found out the other talk I was interested in was actually a writing workshop, which I was too tired already to take part in.
I discussed this with a friend and we agreed all of this “academic” track of Comic-Con Colombia is something they are keeping just for the “status” of the event, but they don’t put a lot of energies on it since all they care about is fitting more stores to increase their revenue. Not like this hasn’t happened in other comic-cons around the world, but I feel there’s a lot of room for improvement.
Some interesting discussion took place in the main stage tho; in one of them, Juan Camacho from UPB’s Digital Entertainment program and Andrés Gomez from lafinka.tv, discussed the current status of the animation and video games scene in Colombia.
The Artists’ Alley
Let’s go into the happier news with the Artists’ Alley which was pretty good this year and seems like the only reason I would attend the event again next year. I was able to see comic artists from Bogotá, Medellín, and Cali, as well as two professional cosplayers and a sculptor. I wish again this particular section was bigger since I believe it’s what makes more sense to check (the work of local artists). But of course, it doesn’t bring enough money.
Heroes Latinos by Mikealdi Comics is a saga inspired by Latin American countries.
The comics tell the backstory of each hero and how they come to fight reptilian villains disguised as familiar faces…
In “Buziraco”, from Dragón Negro Comics, the city of Cali is attacked by a demon in 1825. Two brothers, Franciscan friars, are tasked with defeating the demon with their holy weapons, but it will not be easy…
“7 Fábulas & Demonios” by Grecox and Santísima Daysi, is the story of how a group of innocent and happy animals becomes demons representing the seven deadly sins, thru the magic of living in “Maldita Fé de Bogotá”.
Jonathan Vélez Muriel (JVM Ilustrador) was also in the Alley showcasing his work, including compilations of his InkTober work, and some watercolors and illustrations.
The Zape Pelele guys were also in the event, drawing people and promoting their “New Zape” magazine.
The game area was bigger this year, including areas with different kind of games, organized tournaments, booths for Gaming Hardware companies and spaces where players could experience VR games. It was organized again by Gamers and Geeks and it keeps getting better every year.
UPB also had a booth again, with games made by their students including a bullet hell game I almost won.
The communities area was pretty sparse this year, I saw an area where the Mil Espadas guys were having a tournament, and they also had an archery range. There was another area for the Tolkien Fans community where you could take pictures with some monsters.
This creative studio is the creator of “Mariposas”, an animated short that received the “City of Annecy Award” in the Festival international du film d’animation d’Annecy. They were displaying their services portfolio, meeting other Colombian companies and having some talks about Mariposas and other topics related to the animation.
Of course, a big chunk of the event was devoted to the stores, including comics and manga, action figures, books, otaku-stuff and clothing.
Some of the interesting things I saw where hand-made rubber guns of different types, I almost bought one.
There were some positives this year, with higher quality for the exhibitors, and the game arena was much better organized from what I could see.
I already discussed the problems with the organization of the talks; they also missed again publishing the event program on the website baring a link on their facebook page that you had to dig really deep to find (and was not completely accurate). I wonder what will happen this year in this regard, will they get better at it or will it be dismissed for good?
Again, I wish the Artist’s Alley area would grow and more welcoming for local artists. Some of the things I also missed this year was a strong presence of special guests (I was there on Friday and I didn’t really hear anything from them) and a much-reduced number of cosplayer walking around.
Even so, the event remains a good chance to meet artists and geek friends, I hope they address the issues and make it better next time. Until next year!
October 23 to 26 2018. Colombia’s biggest technology-related conference (Official Website). Organized in Corferias in Bogotá, by the Colombian Ministry of ICTs (MINTIC), and sponsored by many organizations including SENA (National Learning Service) and Procolombia (Government Agency for the promotion of tourism, foreign investment, and exports).
The event served as an umbrella for different sub-events, including Bogotá ACM SIGGRAPH 2018 which was probably the biggest and could well be a stand-alone event. Besides the opening talk by Adrian Molina (co-director and writer for Pixar’s Coco), I didn’t participate in any of its other many talks. However, their guests were top-notch, I’m sure all of their talks and masterclasses were good.
More to my interest, there was also a “Business Showroom” organized by Procolombia / Colombia BringITOn. The format was a standard buyers/sellers match-making, categorizing the interests in two broad areas: “Animation” (including 3D Modeling, 2D/3D Animation, Visual Effects, Sound Engineering, as well as different types of coproduction / distribution / publishing deals) and “Video games” (with some overlapping categories but including development on specific platforms such as HTML5, Unity and Unreal, as well as publishing for PC, Console, Mobile and VR).
It ran for 2 days, with each participant having 14 slots for meetings, as well as a space for quick “speed dating” meetings. Overall the quality of the participants was very good, and the organization was great. Some of the companies that sent representatives were Turner International, 2K, Electronic Arts, Apple, Bungie, and Epic Games.
Right by the business room, there was a space to display the video games and animation products made by Colombian companies. The overall opinion of the international visitors I could talk with was that the level was very high, and the evolution of what Colombian studios are producing is amazing.
Another big part of the event was the conferences; there were tracks on animation, video games, music, entrepreneurship, media, digital advertising, cybersecurity, and fintech. Each track included conferences, workshops, and panels on the specific subjects.
The track of conferences I was more interested in was, of course, the video game development one, which covered topics such as UX, marketing, legal and workplace culture, and had several panels where developers of own Intellectual Properties, service providers and publishers shared their experiences and tips for success. I wrote a bit more in deep about one of these panels here.
A final part was the expo floor, of which I could only take a quick tour through. In there, there were local universities displaying the innovations on their IT programs, a showcase of apps made in Colombia (including a section for Agriculture focused ones), a bunch of local companies showing their products and services, and probably a lot more that I missed.
As with all good conferences, it was also a great chance to meet with game dev friends and make new friendships too; the IGDA Colombia Meet and Greet gathered a lot of the game development scene from Colombia as well as our visitors, stories were shared and new friendships were formed.
All in all, Colombia 4.0 is a great event for IT enthusiasts, containing a lot more than you can probably check in three days. Fortunately, most of the talks are recorded so you can check them out in their channel. Unfortunately, for the ones I was able to check the audio was dubbed to Spanish so that may be an issue if your Español isn’t very good, and no English translation seems to be available for the Spanish ones.
Here are some takeaways of the panel, moderated by Chris Wren (ExDev Producer at EA):
Providing development services is a great way for a new or growing company to get funding and learn a lot in the process, this doesn’t have to be a pain even if your dream is to create your own games… there are fun projects to be made for clients.
You have to make a game first. There’s absolutely no way someone is going to hire you otherwise. You also need the ability to build a relationship with the client, communicate using their language, and learn and assimilate their business culture.
Creativity is at the core of video game development, but in order to build a successful business around it, you need to establish processes that can be reliably replicated through different projects.
You are going to face a lot of challenges, every time you face a situation try to figure out why it happened to prevent it from happening again (again, use the newly acquired knowledge as an asset to enhance your processes).
To get your first contract you need luck in order to find a good opportunity, but you also need to be ready with a game to show and push forward against adverse factors without giving up.
Go to events and talks, introduce your work to industry figures and speakers, that will help you get connected with companies if they like you.
We started working in an existing engine and build upon it; the creators of the engine were impressed by our work and hired us. This first client has evolved into our current development partner. Building long time relationships often help.
Initial cash flow issues and technical challenges were common when we started. Some things that helped were having people specialize in specific project roles creating a pipeline to be more efficient.
One thing is planning to make a pipeline and another one is implementing it with local talent. We learned it takes time to build a working team. You need to provide the team with challenges and tools.
We doubled team size too quickly in order to have the capacity to handle incoming projects, just to lose some of them afterward while keeping the additional fixed costs we acquired. We fell into irresponsible growth, we recovered but was painful. To prevent this it helps to grow in small “cells”.
We are building industry so that newly formed developers can have a place to work. Look for companies at IGDA Colombia website, send your portfolios, companies are always looking for good talent and people that understand core concepts of development.
Not all developers are motivated by the same kind of projects. For some developers, it might be more motivating and fun to work in “work for hire” projects, which may be more straightforward than own IPs for indie games.
Stay true to what your company wants to be good at making, know when to say no to a project. We have less diversity of clients every time, but we feel being focused has great advantages.
Find the genre of games you like, work on it every day and show your work to the world.
If you want to work developing video games, take advantage of the current moment of the industry, there ARE places to work in Colombia. It is challenging to get a job but be up to the challenge, even if your plan is to have your own company in the future, you can learn a lot.
Don’t approach game development as someone eating in a restaurant, but rather as the passionate chef in the kitchen, working constantly and focused into making better food experiences every time.
After the panel, the participants were approached by students and developers eager to show their work.
Share your Gravestone page, including a screenshot of your journey, via twitter using the #ananias18 and #roguelike hashtags. (See here for a Gravestone page)
You are also encouraged to share it on reddit but it’s not required
You can submit your character any time before October 7, 4PM PST
Participate playing in any valid official 2.4.4 version of the game, including Android, iOS, Steam and Web. No Fellowship Edition required.
You can also participate playing in person in the Roguelike Arcade at the Celebration (but it’s not required)
Winners will be picked based on the standard scoring criteria (depth level, then kills)
You can use any class / pet combo
Money Prizes to be awarded via Paypal
Ananias Box and Manual – No diskette
T-Shirts available in limited sizes – To be awarded as available.
Sticker set will contain assorted characters as available.
Physical prizes will be delivered in person at the Roguelike Celebration on Sunday October 7. If you are not attending then they will be sent to you for an additional Shipping cost to be paid via paypal.
How can I get the gravestone page for my character?
Just create an account in the game, and then when your character dies or ascends use the “Gravestone” button
I wasn’t really sure what to do, I actually was wondering if I was going to be able to participate at all, but the weeks before coding I toyed in my head with several different ideas… one of them would be a mobile entry based on my Energy Radar project (which is inspired by Pokemon Go), running completely offline but allowing players to interact and capture monsters as a team. I decided against it because of it being maybe too big in scale.
Another one would have been an offline life simulator, someone living on the forest, fishing, something more of an experience than a game since there would be little stress, this would have been more heavy on the graphical side so I abandoned it (more so as the deadline was getting closer)
Finally, had an idea of a non-linear “Space shooter”, keeping some of the Energy Radar ideas on offline interactivity, players could fly from planet to planet; once in a planet, they would input a code from another player on the same planet, which would allow them to advance on the plot.
Knowing that I may very well wound up doing something completely different, but I had to start somewhere, I went with this idea.
At first, I tried to use source from Lost in Asterion (my js13k from 2017), but lost a lot of time. I went instead with a fresh copy of js13k boilerplate. I modified the example and was able to have a static starfield in little time.
Since this was going to be a non linear shooter, and I thought having a “lerping” camera effect would be cool, I invested a lot of time trying to make the “camera” work (again, based on Lost in Asterion). It worked, almost, since I wasn’t really tweening it but rather handling it as an object on-screen with acceleration and position, so it was hard to make it “stick” to the player once it reached him.
I also added simple keyboard input to move the “ship” around, and with the camera following it, it was a rudimentary space scene.
After giving it some thought in my head, and reading my postmortem from 2017, I decided to go on a different route. I would instead focus on making a simple arcade game, and use the 13K to add as much eye and ear candy as possible.
I ditched all the work that I had done in the camera since it was now going to be a linear game (and it wasn’t really working very well)
With a more clear vision of what the game was to be about, I implemented a lot of things,
Collisions between player and enemies.
Bullets killing enemies, increasing the player score.
Removing mobs when out of the screen (stars, enemies, bullets).
“Serial rendering” of mobs allowing potential complex representations.
Render score with LCD like display.
Since I needed something to test my “rendering” system, I decided to design the player ship, I based myself on the ship from the original ArcherFire made in QBasic in 2002.
Doing vectorial art, however, is something I don’t have any experience with. I can do _some_ pixel art, but this is a different beast. Plus I had to manually input the sequence of commands to draw each shape. I did the best I could with the little time I had.
In the end, this design is represented as follows in the code:
(Note that this is meant to be only half of the ship, the other half is drawn mirrored)
Since I was already drawing a scaled version of it, I figured I’d try to include a practical 3d looking effect when turning the ship, it did look pretty good.
Tried to build the game by the end of the day to see how I was doing with the size but found out there was a problem with uglify which didn’t let me thru.
Since I was no longer going for the “offline social” component, I wondered how to incorporate the theme. One obvious option was to provide hotseat multiplayer, and I ended up adding that.
Made enemies being able to shoot at the nearest player, and added the infrastructure to be able to create enemies given a set of parameters. Also added enemies cruising from left to right of the screen, and platforms with 4 mounted turrets.
Added explosion effects, since I didn’t have any tweening library and the rendering was being done manually, had to implement the explosion animation by drawing an expanding circle which would them be “hollowed” when dissipating. Drawing a “hollow” circle in canvas context2d was not as easy as I thought! I ended up using a weird trick to compose the path to fill: Draw the outer circle clockwise and the inner one counter-clockwise. I still don’t understand how that worked.
For SFX, I included again the good old trusty jsfxr. It keeps being useful even after years of not being updated. I added sounds for the explosions and the firing of bullets.
I saw that I still had plenty of space left so I began wondering how to include music. I tried minimusic, set it up and made it work inside the game with a test melody, but was unable to come up with anything half decent (guess why, I’m not a musician!). I left it there, asking a friend to see if he could maybe device something out of it.
Also designed one of the enemy ships (again based on ArcherFire 2002). I tried to implement some way to “rotate” its rendering but after spending some time on it gave up.
Finally, I added one first version of the “wave generator”, that is the thing that puts up new enemies on the stage as the player goes thru. After putting that I found myself with a rudimentary but complete game that someone might even enjoy!
Journey onward to Day 4 and 5, and then a detailed rundown of the game’s structure and some conclusions and thoughts!
The Roguelike Celebration is happening again this year, October 6 and 7. I will be flying to SanFran to assist and also give a talk about the History of Roguelikes.
Had an idea running on my head for a while to make a “trailer” for the event (no one asked me for it). At first, I thought of creating a playable classic roguelike using my JSRL roguelike template. I actually did create the foundations for it (as in walk in a predefined map), but it lacked the cinematic potential for a short trailer. In any case, I integrated the “torch” effect from the unicodetiles.js example into JSRL, which may be useful. You can check out the integration here.
Then I had another idea and I just couldn’t be at peace until I implemented it. I think it occurred to me a day while driving and listening to the Mega Man III OST. I thought I had found the perfect tune for it. So, even in a busy week with lots of work, I just had to do it.
The trailer features the awesome speakers’ lineup in a “robot-masters” NES Megaman stage selected style.
Of course, there’s little structure to the project since it was meant to be a quick job (and is also pretty simple). Most of the relevant logic can be found in a single Object, the Game state. I set up a stage with a black background and the gray strip, as well a Sprite object for the character and 4 text fields. I used a Megaman 10 font (I had found another one for Megaman 2 but for some reason, it could not be loaded as a web font), I performed a simple centering function based on each line’s character count to keep the characters as sprites in the grid (thus getting a bit close to being a NES “background sprite”?).
There was also a simple “particle” animation in the background, instead of stars they were small @ signs because, you know, roguelike. I used the same color palette used on the Roguelike Celebration logo for them.
Of course, the most fun part was doing the pixel art for the speakers. I used a bunch of Mega Man 2 robot masters as a base and then I proceeded on tweaking them for each speaker. The ones I know in person where easier, for the others I had to do a bit of stalki Internet research, I hope I managed to capture their likeness.
Finally, I reused the “Retro TV with scanlines” from Cat Cafe.