Olvand is a little multiplayer sandbox RPG, where the players live in self-built towns and can go on all kinds of adventures together. Imagine living with your friends in a small town in the mountains, or creating a new group of friends in a pub in the metropole you all live in. There will be several minigames the inhabitants of a server can play together, among which will be combat based games like King of the Hill or Capture the Flag. You will be able to play against other people in your city, or as a city against another city, or as a whole server against another server. The combat works with self-built guns, in which all kinds of powers can be combined to create unique effects. You can sign up to be a tester on olvand.com.

Some pictures of what I want to add in the future:

Image RSS Feed Latest Screens
Building a little town together A fishing contest Mining for materials
Blog RSS Feed Report abuse Latest News: A new architcture for the monster generator

1 comment by Woseseltops on Apr 19th, 2015

Hi all! I'm happy to tell you that I'm finally back on track, working again on Olvand's next update. The last few blogposts, I mostly told you about what exactly is in these updates, and why. This week, I would like to take a slightly different approach, and tell you about the code architecture. This is because I've spent a lot of time working on integrating the [monster generator] into the game, and I ended up doing it in a much more generic, elegant way than I originally imagined.

The original plan and its downsides

The code for the monster generator already seemed largely finished when I wanted to start integrating it: it could generate monsters with various appearances, various colors, from various sides, and also 'summarize' its creations in 8-character strings, so they could easily be sent around the internet.


My original plan was to simply add this generator to the Olvand repository, and then link to it from other parts of the game. For example, when the server generates a cave, it asks the monster generator for a few 8-character strings that represent monsters, and when the client needs to turn these representations into actual graphics, it again asks the monster generator to do so.

However, there were two main downsides to the original implementation:

* The generator was not easily extendible: adding new bodies, bodyparts, colors, etc. always meant fiddling with the code. While that is not that problematic right now, now I remember how everything works, it will be when I return to this code in, say, 2 years. But more importantly, it won't allow people without access to the source code (=everybody except me) to extend the generator. Over the last few years, I've grown more and more enthousiastic about content creation by the players; it's definitely something I would want to encourage. Closing the whole thing off right now already would be completely opposite to that.

* The generator could only be used for monsters. Just like the fish generator could only be used for fish, the original monster generator could only be used for monsters, despite there being a lot of overlap in their functionality. This is a particularly stupid thing to do because I already have a -spoiler!- fruit generator planned for the next update.

The new architecture

So the new plan is something that can be (1) used for anything and (2) extended without programming. I achieved this with a combination of a special folder structure in combination with JSON configuration files. To understand how that works exactly, you have to realize that all of Olvand's generators work in roughly this way:

1. A base image is chosen
2. "Bodyparts" are merged with this base image
3. The whole thing is recolored


And in the case of the monsters, this has to be done for all positions the monster can be in (looking down, walking west, lying death, etc.). This leads to this folder structure:

code:
Base A
* Side a
  * Bodypart type I
    * Option 1.png
    * Option 2.png
  * Bodypart type II
    * Option 1.png
    * Option 2.png
* Side b
  * Bodypart type I
    * Option 1.png
    * Option 2.png
  * Bodypart type II
    * Option 1.png
    * Option 2.png
Base B
* Side a
  * Bodypart type I
    * Option 1.png
    * Option 2.png
  * Bodypart type II
    * Option 1.png
    * Option 2.png
* Side b
  * Bodypart type I
    * Option 1.png
    * Option 2.png
  * Bodypart type II
    * Option 1.png
    * Option 2.png

 

And obviously, in this example there are only two options for everything, but this can be extended to infinity by simply creating more folders.

So there you have it, a nice and easy system to generate monsters, and anything really. I have to admit the actual system is slightly more complicated, because it also covers animation, but this is not much more than editing a JSON file in the top folder. This is also where you can specify which colors can be varied, and to what extent. Anyway, right now, I'm pretty happy it, and I will be even more when it's time to build the fruit generator!

If you want more development, see [twitter] or [facebook]. If you want to be a tester, you can subscribe on[olvand.com].

Media RSS Feed Latest Video
Post comment Comments  (40 - 50 of 401)
vmfernan92
vmfernan92 Oct 5 2013, 11:24pm says:

I would love to get in on this! How do I get invited?

+3 votes     reply to comment
Woseseltops Creator
Woseseltops Oct 6 2013, 2:59am replied:

By requesting an invite at olvand.com :).

+2 votes   reply to comment
daddya
daddya Sep 27 2013, 8:36pm says:

ETA on next beta team?

+3 votes     reply to comment
Woseseltops Creator
Woseseltops Sep 28 2013, 4:46pm replied:

Google tells me that ETA can mean hundreds of things, but I guess you mean 'Estimated Time of Arrival'. My estimate (which is almost meaningless, because they are rarely true, in both the positive and negative way) is that it will take me 4-6 weeks to finish the first version of Glux, and implement it in the game.

+2 votes   reply to comment
OnlyOneTone
OnlyOneTone Sep 16 2013, 5:49pm says:

I'm very interested in checking this out. I really like the style and the concept. If anyone has an invite that they don't mind sharing or if the developer could send me an invite that would be greatly appreciated.

+3 votes     reply to comment
daddya
daddya Sep 16 2013, 6:43pm replied:

im hopeing for an invite to theres a place to request early acsess hop we both get in :P

+3 votes     reply to comment
Woseseltops Creator
Woseseltops Sep 17 2013, 1:48am replied:

Hi OnlyOneTone and daddya, thanks for your interest! You can sign up for an invite on olvand.com :).

+2 votes   reply to comment
daddya
daddya Sep 19 2013, 6:57pm replied:

i already did
im waiting my turn for my turn to try it out

+3 votes     reply to comment
micahjg
micahjg Sep 15 2013, 8:39pm says:

Won't let me use my acount...says its not a real acount

+3 votes     reply to comment
Woseseltops Creator
Woseseltops Sep 16 2013, 2:26am replied:

Hi, sorry to hear that, but it's definitely something fixable. Could you send me the exact error message in a personal message, or post it on the forums? Thanks!

+2 votes   reply to comment
kaytavo
kaytavo Sep 7 2013, 6:20am says:

I took Tovanis down to install a new HDD and forgot to put it back up, oops....

+3 votes     reply to comment
Post a Comment
click to sign in

You are not logged in, your comment will be anonymous unless you join the community today (totally free - or sign in with your social account on the right) which we encourage all contributors to do.

2000 characters limit; HTML formatting and smileys are not supported - text only

Icon
Olvand
Platform
Windows
Developed By
Woseseltops
Engine
Custom Built
Contact
Send Message
Official Page
Olvand.com
Release Date
Released Aug 18, 2012
Game Watch
Track this game
Share
Community Rating

Average

9.4

68 votes submitted.

You Say

-

Ratings closed.

Highest Rated (5 agree) 10/10

Amazing game can't wait for more updates.

Sep 29 2012, 9:26am by jeco0357

Style
Genre
Role Playing
Theme
Fantasy
Players
Multiplayer
Project
Indie
Boxshot
Boxshot
Twitter

Latest tweets from

It can take up to a few hours for tweets to begin appearing.

Embed Buttons

Promote Olvand on your homepage or blog by selecting a button and using the embed code provided (more).

Olvand Olvand
Olvand
Statistics
Last Update
7 hours ago
Watchers
536 members
News
118
Reviews
21