This is a group for all developers using the Unreal Developer's Kit. Open for all commercial, non-commercial and personal projects!

Report article RSS Feed Level Creator Dev Day One

Dev day one of the Level Creator. In this short dev feature I will explain and show what happened on Day One.

Posted by BetaNium on Feb 29th, 2012
Article

WARNING! THIS ARTICLE MAY INCLUDE TECHNICAL STUFF!

I have been working on new exciting feature for Block Planets; The Level Creator!
The plan is to create a easy to use level creator in-game so everybody can create their own levels and even share them with their friends! We might even make a community rating system, so the players can see and play the best rated levels.

In this short dev feature I will explain and show what happened on Day One.

First off I started thinking how should the editor basicly work, what could the user do with it and how would the levels be saved. I decided that the editor should be as easy to use as it can so there should not be any unintuitive controls ( Like the Bob the Blob level creator was... ). There should not be any nasty math stuff for the user. I'm glad that I had experimented with the Multidimensional arrays before ( Bob the Blob Level Creator ) as it would be best to save the Ids of objects to an three dimensional array and then reconstruct the level from that when needed. And the best thing is that the level save size would be really really small as there can be only 6*6*6= 216 objects in the planet. I had to write an dll to handle the saving and loading because UnrealScript can not create other than config files ( Those are bad for this purpose ) Basically it works like this:

struct InfoArray3 {
var int ZInfo[6];
};
struct InfoArray2 {
var InfoArray3 YInfo[6];
};
struct InfoArray {
var InfoArray2 XInfo[6];
};
var InfoArray InfoStruct;


This is the ā€¯multidimensional arrayā€¯ the int in Zinfo tells the game, which block to spawn in the particular position.

The infostruct then gets passed to C++ code trough UDK's DLLBind and writes this struct to file. The file is only few kilobits in size so it could be possible to store these user made levels on our own servers and players then could browse these levels and play them.


Later on I will be adding stuff to the struct. Things like wonderer block movement info, Level Name, time limits etc.

Level Creator after Dev Day One
Level made with the editor.

I also created a brush object, which helps the player see where he's spawning the selected block.
I did't start any UI development because I think that it's more important to make the editor work
first and then after that do the eye candy.

Conclusion for day 1:

-Ability to select block types normal ground, angry block, player block and goal block.
-Ability to spawn these block anywhere in the level.
-Saving and loading

Dev day two tomorrow!

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

Established
Nov 16, 2009
Privacy
Public
Subscription
Open to all members
Homepage
Udk.com
Contact
Send Message
Email
Members Only
Membership
Join this group
Group Watch
Track this group
Feature
Browse
Features
Report Abuse
Report article
Related Games
Block Planets
Block Planets Single Player Puzzle Compilation
Related Engines
Unreal Development Kit
Unreal Development Kit Commercial Released Oct 31, 2009
Related Groups
BetaDreams
BetaDreams Developer & Publisher with 5 members
Indie Devs
Indie Devs Hobbies & Interests group with 1,131 members
UDK Developer's Group
UDK Developer's Group Hardware & Tech group with 695 members