Emerald Woods – Small quickfix [0.2.10]

We had some players dive into the latest version and they quickly found some small but noisy bugs, so here’s a bugfix version! You can get it for free at itch.io

Here’s the changelog

  • Fix bed recipe: Set to place in the world instead of carrying
  • Fix raft recipes: Set to build on water instead of carrying.
  • Improvement: Try to place items in front when crafting and the resulting item is too heavy (instead of failing crafting)
  • Fix: Use materials around the player to build heavy stuff, which is required when crafting items that require more materials than the player can carry.
  • Fix: Row using a paddle (new craftable) while standing on a floating vehicle (new world object type).
  • Fix: Prevent axing or breaking items that have a stacked item
  • Fix: The “Building” achievable is displayed even after completing it.
  • Fix: Transformed cells like doors and gates are re-opened after loading the game.
  • Fix: Correct sickness hours based on gravity and vitality (had a wrong scale in minutes instead of hours)
  • Fix: Change capture animals’ achievement to only include small ones that can currently be captured.
  • Fix: Flooring examine description doesn’t include name of the tile
  • Fix: Item examine description displays undefined.

Emerald Woods – Survival mode activated (0.2.9)

It’s been one month since the last public release. We have packed a lot of work in this version, hope you enjoy it! You can download it for free from the page at itch.io.

As we continue pouring work into this, we get closer to a point of providing an “Earlier Access” version via itch.io. That will probably happen for version 0.3.0 which is not extremely far away. For now, this version remains completely free.

We have been streaming weekly on Wednesday and Friday, 11AM PST / 7PM GMT. Subscribe to our twitch so you don’t miss it! But if you do, these are always backed as VoD into our YouTube channel, so subscribe to it as well!

The overall goal for v0.3.0 in the roadmap is improving Farming, so that has been the criteria guiding the development of these new versions. Here is a summarized log of the changes and the work behind them.

Exploration

Some of the most noticeable changes in gameplay are related to the exploration facet. The game has been rebalanced so it’s not that chill anymore: in the absence of monsters to combat, the biggest danger is your fatigue and hunger bars.

For starters, this version brings back the possibility of Fainting if you continue working (or even walking) when your fatigue bar is full; there are options to recover from the fatigue, like taking a nap (as long as it’s not too late already), eating or drinking a fatigue recovering item (coffee, for instance), or just relaxing for a bit up to a cap of fatigue recovery per day of sleep. Ultimately you will want to have a good night of rest, in a proper bed or bedroll and by a warm campfire, and with your stomach full, if you want to avoid the risk.

Fainting or mediocre sleeping will hit your health hard, and you will die quickly (and permanently) if you don’t keep an eye on it. We are open to your feedback on these aspects since we want to make the game enjoyable for a broad number of players but we see merits in being able to enjoy the procedural generation aspects more and requiring the players to take meaningful choices.

Another important addition, semi-related to these balancing changes, is the carry capacity limits; items now have weight so you will have to decide what to carry with you if you want to be able to bring back things, adding a layer of planning to your journeys.

Forageable items (like mushrooms and nuts) are now added to the journal, displayed in a separate section from the growable crops (along with the berries).

World Interactivity

As a big improvement to the User Interface, there is now a new “contextual” menu with which you can now access all the possible actions based on your current tool and whatever is in front of you just by pressing Space. This eliminates the need of learning a lot of keyboard commands (or the clutter on screen that we had on previous versions). Additionally, this takes us one step ahead to a possible mobile version.

Some other additions included:

  • A new tool, the shovel, which you can use to dig Clay out of the ground (which is used for some new crafting recipes).
  • Actions also now take different amounts of time, this includes lumbering and mining taking some relevant time so you have to plan your work.
  • You can now drop a single item from a stack of items, and it will merge into existing stacks of items.
  • Tables (and other objects) you can place items on top of.

Cooking

As mentioned before, farming and cooking is the guiding force of the 0.3.0 milestone, so there was a substantial amount of work on this which in turn pushed some other areas of the game.

For starters, we changed the cooking panel to display a grid of recipes instead of a list, along with the ingredients and required containers; this grid always includes the “inspirational” recipes, but we also added the option to cook any kind of meat you are carrying (in which case the recipe only displays for the raw meats in your inventory). This menu also now stays open in case you want to cook more than one recipe.

The recipes requiring a container will now require you to place it on top of the cooking place, and that recipient is where the contents of the recipe will be stored, replacing whatever was on it (as long as its previous contents were useable for the recipe itself). This triggered lots of changes for the liquid containers, which are described in the section below.

Some recipes now require plates as containers, so you don’t eat them like a savage.

We also added a bunch of recipes that use carrots, as well as other ingredients that are required for them, scattered as treasures in the cabins all along the land. This made sense since carrots are the first crop you’ll normally harvest so what better use for it than a good recipe. Along with that, a new overarching goal was added to bake a Carrot cake, which will require you to explore around to find the ingredients.

Liquid Containers

Containers can now be filled with liquids from other containers (not just water or results from cooking), this means you can prepare a given beverage in a big container, and then fill smaller containers with some of it for conveniently carrying it around. This is pretty useless for now.

The appearance of the containers is now updated based on their contents, as well as the description displayed when they are examined.

A new command, Pour, can now be used to empty containers as opposed to just placing them on the floor.

Crafting

Added three variations of tiled floor you can craft, these require clay and paint so the paint items are back (however for now you cannot apply them to the world or other items, since that will require some changes in the rendering since we are no longer in the 1bit mode.)

Visuals

A small but extremely visible change was making the grass lighter to improve the contrast with the outlines of the objects in the world.

The sprites for the berries, coffee grains, and bushes, were remade. The trees in the plains areas (outside the woods) also have a unique appearance.

A small nuance that was fixed was making fences no longer “stick” to trees and rocks, an artifact of how the smart rendering rules work.

A placeholder title screen was added based on an AI-generated image sent by a friend.

Procedural Generation

While the procgen is not the focus of the current overarching milestone, that doesn’t mean some small improvements cannot be done.

I added some patches of Ouvlurin forests to give some variety to the woods; in the future, there will be more of these kinds of features the player will feel very happy to find around.

More importantly, Genco cabins will no longer be placed inside mountains or lakes, preventing runs where you could explore the entire woods without finding a single cabin. This already required quite a refactor in the codebase but will be worth it for future iterations hopefully.

TypeScript Migration

This of course is not visible to the players, but I decided to take the big step and start migrating the vanilla Javascript code into TypeScript. This will drastically reduce the chances of runtime errors due to undefined attributes, as well as ease the long-term maintenance of the project and improve the speed at which new features are developed by a solid 43%.

Emerald Woods – Graphics Overhaul! (0.2.6)

It’s been one month since the last public release. We have packed a lot of work in this version, hope you enjoy it! You can download it for free from the page at itch.io.

As we continue pouring work into this, we get closer to a point of proving and Earlier Access version via itch.io. That will probably happen for version 0.3.0 which is not extremely far away. For now, this version remains completely free.

The overall goal for v0.3.0 in the roadmap is improving Farming, so that has been the criteria guiding the development of these new versions. Besides dev work we continue organizing the project and keeping track of the tasks and plans, you can see the current roadmap here.

Visuals

There’s a lot to talk about the work we put into the visuals, but images are worth more than words.

At first, I worked on improving how trees were rendered so that they took up a little bit more space and didn’t look just like flat icons on the map; in order for this to work I had to break away from the grid, and activate the transparent rendering mode. This then led to adding some exceptions to how the tinted 1bit tileset worked, so that the trunks of the trees could have a different color.

Now that we had transparency it longer made sense to have the plants and animals rendered with an opaque background, which led to pixel work to add outlines or remake tiles so that they looked fine against the ground background.

All this continued accumulating until I decided to go ahead and remove the ultra-low colors mode, replacing it with a full-blown 64 colors tileset with no restrictions per sprite based on the original pixel art concepts designed by Mateo Robayo. There were several iterations looking for something that would remain close to the roguelike aesthetic but was still readable and looked good.

A lot of pixel art had to be done in order to cover all of the game objects, terrain, animals, new recipes, and ingredients. This is what had mainly prevented me from doing the jump, and it accounted for a lot of work, but I figured out this was something we had to do in order to reach more people.

But the work didn’t stop there, now that we had more colors, I needed to push things a bit further to add perspective. This included adding vertical offsets to the sprites to give a better illusion of depth with creatures and trees appearing as standing “billboards” instead of seeming to be laying flat in the ground, coupled with allowing any sprite to be bigger than the grid (not just trees) so that there can be big animals and items. Walls are also now rendered as chunky “blocks”, to give them some depth.

Another important change was adding support for rendering “rules”, effectively creating a layer of abstraction between the world model and the tiled sprites representation. The following rules have been implemented:

  • Boundary: Renders a different texture if a tile in the world has another type of tile above. This is used to draw the borders of lakes and the “cut-off” version of walls so you can see what is behind them.
  • Perlin: Pick the texture to render from a list, using Perlin noise having the coordinates of the object as input. This simple but effective rule allows for adding a lot of variety to the representation of the world.
  • Anchor: Select the texture to render based on the immediate solid tiles to the sides. Used for things like doors and gates to display vertical and horizontal variations.
  • Grid15: Simple heuristics to select the texture to draw based on the neighbor solid tiles, from a set of 15 tiles covering cases not only for vertical and horizontal representations but also for corners and tips. Currently used for the fences.

Finally, I added variations to the player sprite so you can see when it is resting, sleeping, working, or when it’s struggling to do work because of fatigue.

On a side note, as a result of the big overhaul, this version sadly does not support the characters-based display (i.e. ASCII/Unicode mode). That UI will need some work to get on pair with the graphics one, and we also need to (re)define a whole bunch of appearances and colors to use, for the updated content.

Farming

Added persistent plants that give fruits periodically, including berry bushes, coffee shrubs, and avocado trees. These shrubs are now “solid” so you must plant them strategically.

Guided by the addition of the new recipes, and to some extent the developments of the plot, we have new crops including carrots, avocado, sugarcane, garlic, red rice, giant wheat, and onion.

There is also a new command, “P”lant, useful for some seed items you can either consume or plant (including sugarcane).

Cooking

Add a new batch of recipes (note that some of them still can’t be done due to missing ingredients), some items are also now liquid containers, and can be filled with water or results of the recipes (like black coffee, or some soups).

The list of recipes is now filtered so that it only displays the things you have ingredients for unless it is an “inspirational” recipe (as in, things we want the player to seek to cook). This means you can also do simpler recipes, for example, all kinds of meat can be grilled for added nutritional value.

For the inspirational recipes, a message with the ingredients missing was added in case you attempt it.

Procedural content generation and vegetation

This release is not heavy on procgen improvements, however, there were some tweaks in the population of the vegetation, including adding scattered nuts, a new type of mushroom, and the addition of “tall grass”, which you need to cut in order to be able to farm (a new tool, the Machete, was added for that in addition to some other uses for resource gathering). There are also stones scattered around so that you have to clean up the area you want to farm on, or gather and use them as resources.

Also, as mentioned before, the berries were replaced by shrubs, which required tweaking the values a bit to prevent exploits.

Achievable Goals

As an open-world experience, you can pretty much put your own goals in Emerald Woods. However, we are adding some “achievable goals” you will be able to select to guide your journey (or at least they will serve to show the player examples of what they can do within the game).

For now, there are four, fixed achievable goals:

  • Capture one of each animal species.
  • Grow one of each available crop.
  • Discover the Genco offices.
  • Build a big house.

These achievable goals are displayed in the HUD along with the progression on them.

More goals have been designed but have yet to be integrated.

Gameplay

Some balancing was done, adding more starting seeds and food for survival, and increasing the nutritional values of gathered food.

There is now a heavy health penalty when sleeping in an unsafe location (no campfire).

A new command was added to “rest in place” for some minutes, just in case you need a slight recovery without taking a nap.

Crafting and building things now has stamina and time cost, so you have to do some resource management if you want to make big buildings!

Rocks are now solid, and you can break them with the pickaxe.

Paint recipes (and painting in general) have been disabled for now, until accommodations are made for the new visuals.

Modding

Most of the data is now being loaded from external JSON files instead of being hardcoded into the game, this includes the visual appearances, items data, recipes, animal races, plants, and even the tileset configuration. This will make it easier in the future to support mods (both official and player-made)

We are considering creating the first of such mods for this year’s 7DRL challenge, we’ll see how that goes.

Genco Plot

There has been a lot of narrative work in the subplot of the game involving Genco corporation. Some of it has been added already as documents scattered in the cabins in the woods but this is just the beginning. The intro has also been updated with hints of this narrative.

User Experience

A chain of tips was added to onboard players into the game, explaining the basics of farming and interaction. There is also a blocking alert shown for long actions (like Saving Game) or when important things happen (for instance the warning when you don’t sleep well)

Design

Here’s a briefing of stuff we have good progress on the design front but no implementation yet

  • Seasons system
  • Animals behavior
  • Genco narrative (more content)
  • More crops and forageable plants
  • Crafting furniture and a lot of items.
  • Pets system

Slashie’s 2022 Rewind

And so, 2022 is over. Another year of awesome game-dev. Here is the story.

NovaMundi is still in Early Access; even with some important progress on it, we still haven’t managed to execute the plans to add content and polish the experience to make the transition to full release. OpenArthurianX6 saw no development at all, seemingly failing to make the last mile, and roguenet was taken down and not used at all. Rainy Day saw no development but instead, Emerald Woods was revived with a lot of promising development.

FormulaProc was the big bet of the first half of the year, however, it failed to make a splash. Muyscamuy got a push for further development but was halted and will likely be revived for 2023.

I participated in 3 game jams (7DRL, trijam and js13k), gave a talk at the roguelike celebration virtual event, flew to Germany for GamesCom 2022, to Colombia 4.0 in Bogota, and to the FICCI festival in Cartagena, Colombia. I switched back to JS for my personal projects besides FormulaProc.

Slashware Interactive continued operations, focusing on our main client (Zynga) as well as co-producing a game with our friends from Bombillo Amarillo; we also put some work on TWO secret projects for clients, which we should be able to talk about next year.

See also rewinds for 201420152016201720182019, 2020, and 2021.

January

The year started with work in FormulaProc, with three Grand Prix events executed (Spanish, Monaco, and Azerbaijan) improving the engine to be less abstract with a top-down display, better UI, and even a lot of work in a discord bot for players to be able to interact with the simulation indirectly. We even did an intro video for the races and created a lot of background content for the drivers, teams, and articles covering the races.

There was also some work done for NovaMundi after a long break (a usual pattern now) prompted by an interview done for the official channel of the Congress of Colombia (!). Continuing with the migration to the new visual style for the units, and improving the UI.

February

More work in FormulaProc with the Italy, Texas, France, UK and Belgium “2021” GPs (!). As the simulation continued to improve, we continued pouring narrative content and visual improvements into it. Realistic characters were changed for Anime representations, and the abstract map was replaced by a satellite view. Some work was done to set up the simulation so it was more ‘cinematic’, highlighting the interaction between the characters.

Pixal, my old persistent-browser-based game from 2008-2010 saw a very short-lived revival; sadly it’s just too hard to open another work front. But at least I jump-started it and remembered how it works, even fixing some ages-old bugs in the process. So it remains unavailable to the public for now.

March

It was time for my 19th 7DRL, I made SpelunkyRL. It was good, I had been wanting to do it for years.

Also, as part of the quest I set myself to upload more of my games into itch.io for preservation (and sometimes include some minor improvements) I released a new version of my 2021 js13k entry, Distant Friends.

April

I couldn’t help myself from investing a bit more time into SpelunkyRL, producing an improved post-challenge version since some people really enjoyed it. It was focused on UX with a better tutorial and bug fixes.

The itch.io quest continued with ZeldaRL having an update after 15 years, making it much more enjoyable (although there was some controversy around the removal of Permadeath, but it really wasn’t working there), and the Ultima Castle Generator being posted there as well, with some UX improvements.

I came back to FormulaProc to finish the “2021 season”, with Mexico, Brazil, and Abu Dhabi Grand Prixes, some failed efforts at trying to make people more aware of it, and progress on trying to make races more exciting with “emotions”‘ for the drivers.

We started work in “Flashlight Defense”, a tie-in for a series being produced by our friends from Bombillo Amarillo.

May

I kicked off season 2022 of FormulaProc with the Miami Grand Prix featuring renewed visuals for the portraits of the characters and their emotions, as well as the cars on the track and some promotional models. I also ran the Spanish and Monaco Grand Prixes, with the latter featuring narration and some efforts at editing it for other platforms (such as TikTok)

I visited the Colombia 4.0 event in Bogotá, Colombia, where we showcased Slashware’s games.

The itch.io quest continued with “Ancient Shadows“, my old incomplete point-and-click adventure, being assembled back and put online. Noone has yet reported having completed it.

I also participated for the first time in the Trijam, the challenge to create a full game in 3 hours. I teamed up with QuietGecko to create No Survivors, a game similar to Vampire Survivors but the other way around with you controlling indirectly the hordes of monsters.

Work continued in Flashlight Defense.

June

At last, a new version of NovaMundi was pushed out, and it was quite an important package of improvements for gameplay and content, including the addition of visual hints in the minimap itself for the approximate location of things (instead of having to rely on vague cardinal directions).

I did some post-jam work for No Survivors since I believed the idea had some potential but of course, cannot be put in a decent shape in 3 hours if it’s meant to be experienced by more players (that is if it’s to be more than just a hardcore game dev exercise).

We also were selected as winners of an Endless+GGJ microgrant to further develop Muyscamuy’s visual aspects so we start working on that.

Work continued in Flashlight Defense.

July

Some work was done in Muyscamuy’s visual improvements, however, I didn’t manage to get it to a point where it could be shown due to missing art, as the artist that worked on the project was transitioning to other projects, so had to put that on hold.

We finished work in Flashlight Defense! at least covering the initial plan. The game is still not playable because the animated series hasn’t been released to the public, but will be soon! It’s something completely different to what I normally do but it was a nice change of focus and we learned a lot about Unity2D.

Thinking of some future similar project that could be tackled by other members of Slashware, I began conversations with the owners of a popular Colombian IP to create a top-down narrative-heavy, cute jRPG. This may see some developments in 2023.

August

Another interview powered another release of NovaMundi; it was light in features but bundled some important bugfixes fixes. Then an even bigger version was shipped with the foundation of the perks system that we had been developing to introduce some variety to the gameplay. I then went on to improve the procedural caverns but ran out of NovaMundi energy before I could release that.

js13k started so I jumped into making yet another entry, this time a simple arcade game inspired by tamagotchi.

The improvements for the Trijam version that I worked on June were finally released to little fanfare. Just something that improved the idea but still would require investing dev heavily to make it worthy.

HBO’s House of the Dragon series was premiering so I created a couple of cinematic intros similar to the ones I had made for Game of Thrones some years ago. Interestingly what I thought would be the start of Season 1 ended up being the end of it, as they took the entire season to build up the setting for the Dance of the Dragons (good idea!).

I ran the FormulaProc Monza Grand Prix which was basically a FormulaProx Grand Prix.

Finally, I flew to Germany for gamescom; there I had good prospects for NovaMundi and our upcoming project “Serenade of Chaos” (still hoping to see both things progress for 2023), and also met the dev team of Blasphemous and got to drive around Germany with Thomas Biskup. So it was all around great even accounting for having lost some cash and my passport at Frankfurt. (Michael Schumacher’s museum visit with Eivar Rojas was another highlight)

Frankfurt was also a milestone for the machinations leading to the planning of yet another exciting secret project that I hope to be able to announce in 2023.

September

Finished my js13k entry and did a small update to ZeldaRL.

Besides that, I decided to address something that had been haunting me for a bit now; due to crumbling architecture, the mobile versions of Ananias for Android and iOS hadn’t been working for a long time now; I was able to patch the Android version and did a maintenance release for the platform after 5 years (long overdue!)

October

I ran the Japanese FormulaProc GP, the last one of the year. I decided to experiment with different visuals for the track, going back to abstract instead of satellite, and zooming in to the cars for more action. It was surprisingly super demanding for my dev box, handling that huge image file for the map (not very optimized)

It was not simple (even more difficult because I lack a new MacBook where I can freely test the iOS build process, but I managed to send the update for Ananias on iOS fixing the crash on startup.

We drafted some of our plans for the full release of NovaMundi.

And finally, I did a talk for the virtual roguelike celebration 2022 about Moria and its impact on the world of game development.

We also put a lot of work into a COOL SECRET PROJECT to be disclosed in 2023!

November

Tendergotchi was added to itch.io

And then I fell into the black hole of Emerald Woods. First with an innocent usual necro-release (it had been 3 years already!), but then felt tempted to add a little bit to it (in the shape of a feature no one had asked for: painting the world). A popular feature that was requested for it was that a downloadable version was available so I decided to revive a long-dormant development submitted for JSRL by Erik Yuzwa to add Electron support; as that was polished and merged into JSRL, I integrated the changes into Emerald Woods, producing the first downloadable version.

This shook the infrastructure of the project and required to push an unpublished npm update to circular-functions.

And then, another long-requested feature: Adding graphics to the game. I decided to follow a similar pattern of first adding support for that to JSRL so that more people can make use of it. I used Pixi.

End of November I also went to the Colombian Game Dev Summit, which happened to be made in my hometown. I met some friends I hadn’t seen in a while and saw some good talks.

December

Once support for graphics was added to JSRL, I ported it into Emerald Woods an, after a sizeable amount of work, the first graphical version was released. I decided to initially use a 1-bit tileset serving as a transition between the character-based display and a graphical version. I went from Kenney’s tileset (which I decided to include as the sample for JSRL) to use a good old Denzi tileset.

However, we were already experimenting with more detailed pixelart; I spent the month adding support to it to the game but also doing the required pixel art to cover all the things we are representing on it, along with improving the farming aspects. I didn’t manage to release it but it should come out early January 2023.

Emerald Woods – with Graphics! [v0.2.0]

A new version of Emerald Woods is available! we are inaugurating its graphics mode, hoping this will allow a lot more players to enjoy an adventure of lonely discovery in the woods! You can play online for free, or download the game (both graphics and character versions) at the itch.io page.

We have a lot of plans for Emerald Woods, but I figured it would be good to have this version out before we dive into the final leg of development for NovaMundi. We are in the process of preparing a roadmap with our many ideas and future features for the game.

Following is a detailed journey through the changes bundled in this version.

Visuals

Of course, the most significant change for this version was the addition of a completely new UI using tiled graphics. I ported the latest developments of JSRL as a foundation, but much additional work was required, as Emerald is already a beast compared to the sample JSRL roguelike, and its UI is much more complex (with the toolbox in the HUD, and the window for the recipes).

But that’s not all! we are even ideating a completely original tileset taking inspiration from the likes of Unreal World, Dwarf Fortress, KeeperRL, the Gameboy Zelda titles, and more. I’ve been working with fellow artist Mapedorr (who did the graphics for 404 Rhythm not Found, as well as a big secret Slashware project we’ll disclose in the following months). We did a couple of iterations, landing on what you see below as a general style; however, down the road we realized it will be SOME time until we are able to integrate it and make it complete enough because of the content of the world, its procedural nature and how you can build/destroy it freely.

It has been quite a complex process, just to determine what we should aim for. Everything is easier with a characters-based display because you rely completely on the imagination of the player, so you are exempted from having to decide on a visual style and you can target a broad range of players (that is, IF they get over the no-graphics barrier). But of course, we want to be able to reach more people, and then you have to choose. Some of the previous ideas leaned a bit more into a classic jRPG / Pokemon look, which I think may still work.

In any case, implementing this is not doable right now so we’re keeping that front open for the future. For now, I settled on using a 1-bit tileset and coloring the sprites based on their in-world color (same as used in the characters display).

I initially used Kenney’s 1-bit tileset (inherited from JSRL), but then found it a bit too “comic” proportions for my vision of the game; I dug Denzi’s diary and found something closer to what I wanted (I have this magic connection with Denzi for some reason).

In any case, in the process of choosing between them, I added support for multiple tilesets. This will facilitate future modding work (but still need some work to have a lot of data external to the game bundle so that people can more easily have fun with that).

After settling with Denzi’s tileset, I selected and created the graphics for all the current animals, and filled many other gaps (an advantage of using such simplified tileset is a programmer can still do that)

Design

SlashwareKnight-010, “Stoltverd”, has been working on the design front in preparation for future development iterations; this has included expanding the list of craftable items, and along with that the materials that you can find in the world and how you harvest them with tools you can improve.

We have also been designing new areas of the world that players will optionally be able to explore to uncover a story, and improvements in the pet system so you can teach them tricks and have them follow you around just for company or to perform some useful duties

Exploration

For some time I’ve been debating how to add some aids for the players not to get lost (since I discovered, painfully, that players (modern players?) don’t really enjoy that). The obvious answer is an automatic minimap, but before going into that I’m experimenting with some less direct aids. This version includes “waypoints”, you can use the O key to cycle thru them, and there’s an indication in the HUD on what direction they are. Still experimenting to see how well this works.

Discovery Journal

Another big late change included in the version was the first version of the “Discovery Journal” or Field Notes, as they are called inside the game; we are now keeping track of the animals you have captured or the crops you have harvested. This is just a first effort at giving players a sense of progression in case they want to embark on the task of discovering the world.

Colombia GameDev Summit – 2022

Medellín, Colombia. November 29, 2022

Organized by Rocket Ride Games, the first “Colombia GameDev Summit” took place at the Click Clack Hotel, offering food, drinks, and a very decent lineup of speakers for a great afternoon of game development experience sharing in the famed city of Eternal Spring.

Photo courtesy of Tan Grande y Jugando

Swedish indie game publisher Raw Fury had people fly to Medellin to meet with the local developers and share a little bit about their selection process.  Mea Nilimaa, Games Scout, opened the talks with recommendations on how to have a successful pitch, and some of the pitfalls developers commonly fall on when contracting with publishers: what happens if you fail a milestone delivery? what are your rights over the IP and subsequent sequels? and the other projects your studio is working on?

After the opening talk, there was a section featuring founders from Colombia game dev companies.

Luis Correa, a local from Medellin and founder of C2 Game Studio, shared the journey of “Project Monolith”, their ambitious action-adventure game that started development many years ago, was a recipient of an Epic Megagrant, and finally got a publishing deal this year. Luis shared the ups and downs of indie game development, and some tips to overcome the inevitable loss of motivation and push forward making the best use of the resources you have at hand and the skills of your team.

Isaac Cortissoz, CEO of Killasoft, from Barranquilla, gave a talk about their workflow which is based on a solid pre-production phase where all the fun decisions are taken and tools are developed in order to have a smoother (and boring!) production stage where you are just executing a well-laid out plan. A very intriguing talk that created a lot of conversation on the scenarios in which these ideas can be applied. Killasoft is currently working with NetFlix on a videogame for the hit series “Money Heist” (La Casa de Papel) as well as their game INNER.

Then we had old-guard indie developer Carlos Rocha from Dreams Uncorporated, makers of the hit award-winning jRPG Cris Tales published by Modus Games in 2021. He was very happy and excited to go back to having talks with a live audience and shared the journey of Dreams, how they evolved as a studio through many games exploiting and refining curious and unique game mechanics, and their process to discover and develop “seed” mechanics for their games, sometimes finding marvelous inspiration when looking the “normal” things with different eyes. Carlos revealed he hoped to continue developing games until his deathbed.

Gamedev legend Eivar Rojas, founder of the Efecto Studios (the second largest game development company in Colombia) and Red Minas Coffee (the most sought-after coffee brand by game devs worldwide, someday), shared their experience signing with publishers, the different stages of a publishing contract and what to look after when you are in each one of them, as well as their tips to grab the attention of a publisher and to know when to pitch based on the stage of the project, the target platform and monetization model.

The event was organized in a chill informal space of the modern hotel, which allowed the assistants to have conversations in between the talks while drinking delicious soda and cocktails. Talking with fellow developers we were really happy to see so many new faces, some of which may be active actors in the continued growth of the local industry.

A second part of the event featured (either by design or coincidence) a number of women in leadership positions in the Colombian game dev industry.

Photo courtesy of Tan Grande y Jugando

Sandra Castro from the “Tan Grande y Jugando” game development community, shared her updated GDC’22 talk ‘Breaking the Gap”, with insights about the role of women in the video game industry, the many efforts currently underway to improve it from the perspective of the Latin American game dev industry, and how we all can contribute to improving the situation from our respective positions as founders and workers of the industry.

Photo courtesy of Tan Grande y Jugando

Marcela Rincón shared her experience as Talent Management Lead for Teravision Games, the biggest game development company in Colombia, makers of the acclaimed VR game “Captain Toonhead vs. The Punks From Outer Space” and the gamescom’22 hyped “Killer Klowns from Outer Space: The Game“. She talked about the many roles that are required to develop a videogame besides art and gameplay programming (the two disciplines traditionally more sought after to enter the company), inviting people to consider specializing in these other roles and strengthening their networking to get into the industry.

Photo courtesy of Tan Grande y Jugando

Finally, María Carolina Visbal and Paula Buitrago, from Colombian game development-specialist firm “IE Law Bedoya Visbal” closed the event talking about the importance of having the support of a specialized lawyer assisting your team from the onset of any M&A or publishing deal, so that you can see all the possible outcomes and drive the negotiations around them, and prevent missing small details in the law that can become big risks.

As always this was a great opportunity too to meet with friends from the industry from all around the country! Many thanks to RocketRide for organizing the event, and I hope this is just the first of many!

JSRL, now with Graphics! + the story so far [0.0.4]

You can now create graphical (tile-based) roguelikes using JSRL. Check it out at https://github.com/slashman/jsrl which is also now set as a repo template so you can create yours more straightforwardly!

A tutorial is coming soon. The demo at http://slashie.net/jsrl was also updated to the GFX version.

The character-based display is (and will forever be) still supported. OF COURSE.

A Timeline

I also took some time to dive into the history of the project and back-version it (for no helpful reason other than history), so here goes a timeline of JSRL

  • March 2013 – Rodney is released for the 7DRL Challenge. The demo of the unicodetiles lib by tapio000 was super cool, so I created a traditional roguelike game using it.
  • March 2017 – During the development of my 7DRL, PokemonRL, I decided to create a JSBoilerRL “a template project other people will be able to use to create their roguelikes in JS. It’s powered by unicodetiles.js producing similar output as my 2013 7drl, Rodney.”
  • November 2017 – The initial version of JSRL (0.0.1) is released as a standalone project (since it had only lived as part of the PokemonRL repository) and is immediately used for Rogue Program.
  • August 2018 – An attempt to create a trailer for Roguelike Celebration 2018 using JSRL is made, but was deemed not to be cinematic enough.
  • March 2020 – JSRL is used as a foundation for Emerald Woods. No changes are backported into it.
  • October 202 – JSRL is used for the Roguenet client. No changes are backported into it.
  • March 2021 – JSRL is used for Rainy Day. JSRL v0.0.2 is released, adding support to load static maps. (backported from the development of Rainy Day)
  • March 2022 – JSRL is used for SpelunkyRL. No changes are backported into it.
  • November 19, 2022 – Version 0.0.3 featuring Electron packaging (dev pushed forward by wazoo) and viewport scaling (backported from Emerald Woods) is released
  • November 26, 2022 – Version 0.0.4 featuring tile graphics using Pixi.JS is released, in preparation for Emerald Woods’ graphical version.

Emerald woods – downloadable! (0.1.4)

The streak of weekly releases continues for now, hope you enjoy it!

Play online (or download!) at https://slash.itch.io/emerald-woods

Downloadable build

You can now download Emerald Woods so you can play offline easily any time you want. We are using Electron for this hence the big download size, but that shouldn’t be a problem in 2022 (luckily!). The recent update to JSRL was really helpful for this.

This also comes coupled with an “up to date” check done at startup, it will let you know if you are using an outdated version so you can quickly zip there and get the latest changes!

Note that, at least for the moment, I’m also keeping the online version up and working; also for the moment I’m only producing builds for Windows, but if you are on Mac or Linux you can still play online.

Exploration

I made some efforts to put some small constraints on exploration so it’s more interesting; you’ll now be heavily affected if you don’t sleep next to a campfire, losing a bit of your max health every day. Campfires are also a bit more expensive to create now and require Flintstone which is very rare (you start with 1 but can recover it by axing a campfire).

The idea behind this is to make campfires work as shelters, you need to build them at a given place to come back every night, dismantle and make another one deeper in the woods… if you want to explore further.

The starting cabin also has a “campfire” now, of course (should rename that to “fireplace”), so you can sleep cozily there.

Audio

The intensity of the walk sound effects has been lowered, and the sounds for inventory have been changed from a loud beep to something muter.

Got some new sweet sound effects from QuietGecko which were promptly integrated; these included sounds for crafting paint, building/destroying campfires, and painting stuff.

We also added a location-based sound loop for the campfires which we’ll be improving on the next versions so it fades based on distance.

Visuals

There are no big visual changes for this version, however, several icons were changed including the berries, berry bushes, and mushrooms.

Stability

  • A critical bug causing the game to crash when hanging around the map borders was fixed.
  • Several instances of missing checks to make sure the player could carry were added (when pulling fruit, capturing animals, crafting items, or sacrificing animals), before they would cause the grabbed item to be lost.
  • Prevent contextual action waterfalling when some action cannot be performed in the chain, and restore input accordingly. This was causing the players to execute the wrong contextual action when their inventory was full.

circular-functions 0.0.5

circular-functions, my JavaScript library to serialize objects with cyclic dependencies has been officially updated to v0.0.5 in npm! Get it at https://www.npmjs.com/package/circular-functions (or just npm install circular-functions of course)

This includes an important tweak I made over 2 years ago to support “intermediate” serialization data, i.e. stuff you need to put into objects in anticipation of their deserialization but don’t want to keep in memory afterward.

I still gotta write a good, up-to-date tutorial for circular, but it’s been indispensable for all my games.

Ananias, Emerald Woods and OpenArthurianX6 use it. You may find it useful to aid you in serializing and deserializing your game data!