Skip to main content

Inkscape as Level editor

If you dont' know about Inkscape yet, it's a svg editor and if you dont' know svg its just a text based file format for describing an Image.

Now that we have that out of our way.. lets talk business. During one of they pyweek contests, i came across a discussion regarding creating a level editor for a game. And one of the participants posted saying that he is using Inkscape as level editor. I thought to myself that I should be doing it too. But I didnt' know how the parse the file, i knew it was xml but did not know the tags, attributes etc that are valid for an svg. Then i came across a svg rendering library called squrtile . I looked at the code and saw that it was pretty straight forward.

And now for the first time i have used svg as a level editor for my pyweek entry "Charged". This made it way easier to visualize what i was going to see in the game and much more organized. In fact anybody can just pick up any svg editor and start creating there own levels by checking out the levels the game has. Also i've been using inkscape along with gimp extensively since my last project. Here is how and why you can use it as level editor:

  • Open file in Inkscape
  • Open source code viewer (Ctrl+Shift+x)
  • Add key and value pairs for each object. (these can be anything but your program should use this info).
Once the above is done you have a svg file with the information that is required for placing different types of objects in the game world. Once you have this information, we can just render the corresponding objects.

I think i've gotten better at using it :) I am atleast able to make what the game requires. I have to agree though, ive' been trying to keep the art as simple as possible so i can make it look as polished as possible. Any way here are the screenshots of Charged.You can download the game from the pyweek contest site Charged. you will be able to find the windows exe as well as the source. Hope you like it.

Comments

Anonymous said…
Good stuff ;]

Popular posts from this blog

Epic Games Store on Steam Deck

EGS ( Epic Games Store ) like it or hate it, has been giving away free games and if you like free games you would have picked up atleast a couple of them. So given that some of those games are Deck Verified / Playable, its fair to assume you would like to install the EGS on the Deck.  Installing EGS on Steam Deck Switch to Desktop Mode on your Steam Deck Download the EGS installer for windows from the Epic Store website: https://store.epicgames.com/en-US/download (using your web browser of choice)      Open Steam in the desktop mode and add the installer as a non-steam game                                In the browse window, switch from .desktop files to All files. Select EpicInstaller-xxx.msi and add it to steam library. Find EpicInstaller in your steam library and open its' properties by hitting the "Gear" icon on the right ...

Flash animations in GoDot Engine

If you have not heard about GoDot game engine,.. you should check it out right away.. godotengine.org Last time, i wrote a blog post about my experience making a simple physics game to GoDot Engine. Though there are a bunch of free options announced during the GDC this year, i thought ill' contribute to the engine. The one piece that is most important for game dev is the pipeline for the engine. One of the most common tools used for 2D animations is Flash. I have been using a library called Super Animation for almost all the games we've made for android at TMG. It's  a  free tool which lets you convert swf files to .sam files. This file can then be loaded in Cocos2Dx using the Open source loader library  https://github.com/raymondlu/super-animation-samples I thought it would be a good idea to port this cpp library to GoDot so that i understand how to write custom modules for the engine. This is the video of the module in action. I have expos...

Vehicle Physics (Godot 2D)

I've always been fascinated with the vehicle physics used in games. I played so many racing games / the hill climb games and every single time i would wonder wow that must be really hard to do. Thanks to the new generation of game development tools, developing physics based games has become almost a second nature to most people. I didn't want to be left out so i gave it a shot.. I tried setting up vehicle physics in GoDot Engine for a 2D vehicle. Here is what the vehicle scene looks like.. 2D vehicle setup in GoDot As you can see the body collision shape is not right but the rest of the stuff just works. The idea is simple think of what parts move along with the body vs what doesn't. I was kinda stuck setting up the pinJoint2D in GoDot, it actually clearly takes two nodes under the properties. This makes sure that the wheels are hinged to the DampingSpring2D. The Damping Spring2D takes two physics bodies(Body and the PinJoint2D) and makes it work like shock ab...