Thursday, November 24, 2016

Spaceship random generation

0 commenti
Disclaimer: a roguelike is a genre of games where characters are used for visual representation of game world. I've made few roguelike too: CryptoRL and CryptoRl2.

Spaceship generation

I'm working on a small prototype of spaceship room generator. What does it mean ?
Imagine a spaceship like Enterprise or Galactica, from a top/down perspective. A spaceship is made of different kind of rooms types: engine room, dormitory room, armoury room and so on. It's like a dungeon in fantasy games, where every room can be used by crew for a specific need or function.

Different kind of algorithms

There are a lot of different kind of algorithms out there, here some ideas:


Random walk: works fine for cave-based dungeons (I've used this for CryptoRL2), but not so cool for ships, because is too unpredictable and can create small corridors with awkward turns. I think is fine for cave dungeons, but need more work on it. Pure cellular automata feel, at least for me, like I'm missing something, some "crucial points"

Grid based dungeon: like in Spelunky a dungeon is just a space divided using a grid (see here and here for an introduction). On random generation, there is a random walk between "start cell" (decided from one side of the grid) and "end cell" (decided from opposite side of the grid). After that "rooms" will be placed on each cell of the grid, taken randomly from a "pool" of templates (based on a theme).
Results here is good and can be realized easily with an high degree of randomness. I think this method is more suited for a random ship-dungeon, because you can create rooms for basic system (engine, dormitory, engineering bay, escape pods, etc..) mixed with "special rooms" (captain room, stargate room, alien nest and so on) on a grid with a specific shape (square, rectangle, ellipse, with wings, Battlestar Galactica and so on) and iterate on it


Classic room/corridor: place rooms randomly and connect them using corridors. I don't really like this way for my theme, what do you think about it?


Bsp: I think with my theme is fine, but I need to use "square splitting" strategy and will be become like grid based dungeon, more or less.

 Grid based random generation

My solution is based on grid based one, using following room types (remember, i'ts a roguelike!) as string:

    RANDOM_WALK = '#';
    NONE = ' ';
    EMPTY_ROOM = 'e';
    ENGINE_ROOM = 'n';
    LAB_ROOM = 'l';
    DORMITORY_ROOM = 'd';
    PRISON_ROOM = 'p';
    ARMORY_ROOM = 'a';
    FARM_ROOM = 'f';
    STORAGE_ROOM = 's';
    CORE_ROOM = 'c';
    AI_ROOM = '!';
    LANDING_BAY_ROOM = 'b';
    INFIRMARY_ROOM = 'i';
    HIBERNATION_ROOM = 'h';
    CHAPEL_ROOM = '*';
    AUDITORIUM_ROOM = 'u';
    ROBOT_ROOM = 'r';

    KEY = 'K';
    DOOR = 'D';

I'm using also a template for ship generation, so every random generation will generate rooms inside that template (a 10x10 grid), where 'e' means that is possible to place a room type into that space:

      ee   
      ee   
    eeee  
  eeeeee 
  ee    ee 

The proposed method divide the ship in three part: up (u), middle (m) and lower (l), in the following way:

          uu   
          uu   
      mmmm  
  mmmmmm 
  ll              ll 

I'm using this information to place rooms, so for example engine rooms can be created only in the lower part or lab part only in the middle. Of course there are rooms that can be placed everywhere, like dormitory or storage room. Also following suggestion from this thread  I'm using right/left symmetry  for random generation, so with the same template and here a result:

     f|   
     s|   
   dd||  
  psc||| 
  bs   || 
and after filling right part with mirror information from the left one a random generated spaceship:

      ff   
      ss   
   dddd  
  psccsp 
  bs    sb 

With a little bit of legend can have more meaning:

f = farm
s = storage room
d = dormitory
p = prison room
c = core room
b = landing bay

As you can see in this example, this ship seems to be a merchant ship, with a lot of storage, a landing bay for small vessels run by from main spaceship to planet and a farm.. because you want to eat something into space, right ?

Conclusion


I think I'm in the right way, using grid based placement, to create randomly spaceships, a perfect setting of a roguelike!
See you soon and feel free to comment if you want!

Wednesday, June 22, 2016

CryptoRL 2 - source code released

0 commenti

A quick update! Few minutes ago I've released CryptoRl2 source code on github, just click here:

https://github.com/Gornova/CryptoRl2

Happy playing and coding for everyone!


CryptoRL 2 is a small roguelike set in world of dark caves, where a little lef have to find way back to his home. If you want to play CryptoRL2, just go here!

Tuesday, May 10, 2016

Game design - 4x and card game survey results

0 commenti
In this post I will summarize last post's survey results

It was an amazing experience and find so much support from many people around the world is really interesting! Thank you!

This post is together a post mortem on how create a survey on this topic and about actual results.



Audience

 

 

In this first part of the survey, we have some audience informations:



Pro: In our audience, most of people are between 18-40 years, perfect target for our purposes.
Cons: This result seems are heavily influenced from online communities we selected for the survey. Better results could be achieved with a mix between different sources, for example social networks and online advertisement.




Pro: too many men!
Cons: We suggest to find some better sources for intercept females preferences on card, board and video games, because are an interesting potential market for any kind of games! 



Disclaimer: we do not clean data and aggregate answers, because are interesting per-se. Many persons answer on this question using country name (Italy, Germany, USA), but also city name (Trento, Bristol, others...). Some funny results are omitted, like “Hell”.

Pro: a lot of answers not only from Europe and USA, but also from other part of the world (New Zealand, Australia, Brazil)
Cons: next time we must consider a closed list of nations and find a way to extend survey using different languages, because with English we forced ourselves in a limited list of countries, forgetting of all east countries like Japan, China or Spanish countries like Mexico, Argentina, etc… 


Video games

 

 

In this part of the survey, we analyze how much time people dedicate to play videogames:




Pro: many people dedicate a decent amount of time in playing videogames
Cons: 4x games requires generally a lot of time, so playing same game for many days seems reasonable, in next survey this is something to consider

  

Board games

 

 

This part of the survey analyze board game preferences of our audience:



Pro: a lot of people like Risk and Settlers of Catan, but also don’t play board games
Cons: this question could be improved adding a simple “why you don’t play board games”? Today there are a lot of possibility to find amazing board games in local groups or using online groups, for us something to validate is to find what kind of barrier there is for new players.




Pro: people dedicate not too much time
Cons: most of the people seems do not want to dedicate too much time playing board games. Next surveys must investigate about reasons behind it. Does it need too much time? Need to gather with friend in same place?


Card games

 




Pro: Heartstone is right now the leading card games. This is not a surprise for me, but follow the trend of Magic the gathering and surprising… Poker!
Cons: many people do not play card games and this could be a problem in a 4x/card game mix




Pro:  there is a solid base (39%) of our audience, which play card games more than 2 hours in a month
Cons: more than board game, most of the people do not play card games too much and for future survey must take into consideration reason behind this choice

  

4x games

 

 

This part of the survey try to understand how much people know about 4x games. In original survey there was one key question “do you know what 4x means?” and more than 80% of audience know what does it mean.




Pro: my assumption, now validated, is that many people hate micro management in 4x games, followed by lack of personalization
Cons: there is a lot of data and ideas behind and find one “single” hate point in 4x games is really difficult





Pro: many people are interested in space based 4x settings and games like new Master of Orion reboot or Stellaris are on the right direction!
Cons: many, many ideas for settings in 4x games, force audience in choose only one is a limitation. Should be better to set this question as open question ?


Core question

 

 

Main objective of this survey was to answer to a simple question:



Pro:  few people are not interested in a mix between 4x and card game
Cons: with a question like that, is difficult to say what kind of mix people will like more: more board/video game than a card game, or more a card game ?


Conclusion

My idea to mix together 4x games and card game in an unique experience could be interesting for other people than me. Key question is : how ? I have to think about it and I'm working a paper prototype following ideas from this survey and talking with friends.
I'd like to have more comments below and more feedback as possible, so feel free to ask!


Download raw data here

Saturday, April 16, 2016

Game research - 4x and card game mix

0 commenti
In last weeks I've been trying to figure out a good idea for my next game and I'd like to create a mix between 4x games and card games.
Imagine a game like civilization, where you have a lot of micro management.. and remove that micro management with cards players can play and order to explore a new zone or create a new colony.

paper prototype!

So I've created a little paper prototype and found fun and interesting! A looot work to do, bus seems promising!

I have build a little google module to get feedback from everyone, it requires only 5 minutes:

http://goo.gl/forms/kM6mtAjgOc

I will share results with every participants!

Thanks for your time!

Monday, April 4, 2016

CryptoRL - version 1.0 is out!

0 commenti
Hello everyone! A major step for my roguelike, CryproRL 2, now at version 1.0 !!




In this version:

  •     add new items: sword (+1 attack) and shield (+1 defense)
  •     From Archifenix: put in menu screen that using F2 you can go fullscreen
  •     BUG From Archifenix: the text at the top is blocked from view until you repeat the same action a few times (fighting an aberration for example resulted in health being lost but the text only scrolling into view after the third or so hit)
  •     BUG from Pavel Provotorov: Sounds when the player/monster recieves damage    
  •     BUG from Pavel Provotorov: Adding health bars to mosters. The combat is hard without those
  •     added new monsters: Fungus, Shade, Ring, Formian, RedFlame, BlueFlame
  •     level balancing for new monsters