Creating a map is an exercise in frustration

Discussion in 'Content Creation' started by Burillo, Jun 7, 2016.

  1. Burillo

    Burillo
    Expand Collapse

    Joined:
    Jun 6, 2016
    Messages:
    11
    I'm trying to create a simple map, but this is an exercise in frustration.

    Documentation is non-existent, and both the website and the web in general are littered with "tutorial videos" which don't explain anything, or tutorials for outdated versions which don't work. To add insult to injury, there are the same bugs still present in the editor that were bumped into by users a over year ago, and still haven't been fixed, and everyone gives contradictory advice on how and where to place which files. What follows is a rough outline of my journey so far.

    ----------------

    So, let's see. I decide to create a map. I've been analyzing the existing maps for a few days, so i have a pretty good idea on how to build my own map from scratch. So, where do i go? I load up a game, and pick an obvious solution - look for an empty map, and go from there. OK, let's do that - open up a template map. Whoa, what's all that?! That's not empty! I want to start from scratch, and work my way up!

    OK, take two - opening the Grid, Small, Pure map. Now we're talking - an empty map. So, let's pause the simulation, switch to editor mode and try to import a height map. So i go to My Documents, and pick a height map (a PNG) i created earlier. "Terrain import failed!". Great. It also says check the console for error messages. OK, bringing up console... Nice, "heightmap failed to load". Very descriptive.

    OK, Google, let's search for "beamng heightmap failed to load". First solution, place the heightmap in the "content" folder. Doing that... "Terrain import failed!". Super. Scrolling down. OK, scratch that "content" folder, the new place seems to be... "levels" in the Steam directory? Whose bright idea was that? That area is supposed to be off limits to unpriviledged users! OK, let's place the heightmap there. "Terrain import failed!". Scrolling again... OK, let's try "content/levels". "Terrain import failed!". Dammit.

    Oh wow, look at that! A post from staff member! So, i should put my heightmap into "Documents/BeamNG.Drive/mods/levels/mymap"! Great, let's try that. "Terrain import failed!". Yikes. So even the support official doesn't know where to place files! But this must have an upside - you would think that now support is aware of these issues, and is working on a solution, right? Well, that post was almost a year ago, and here i am, trying to figure out where to put my frikkin height map.

    Oh, look at that - another possible solution - put the heightmap into game's content folder! Disregarding the security implications of this, let's try it. Oh wow! Success! So, my heightmap should be in the game's content folder, as opposed to... in the WIP track folder? Or somewhere arbitrary, because the heightmap is really only used on import, after which the geometry is already done and can be saved independently?

    But hey, look on the upside! The terrain import is working, i now have a nice mountaneous scenery! But wait, why does my scenery have texture on it? I didn't assign anything, and i know for a fact that usually, when there's no texture, the game just puts an orange "no texture" placeholder. So wtf? But OK, let's try and import one. I've seen an option to add a texture to heightmap on import, so let's do that - delete the terrain, import heightmap and this time also tell it to load a texture from another file. By now i assume that the game wouldn't find the texture if i placed it just anywhere on my disk, so i'll place the texture in the content folder, in hopes that the texture logic works similarly. So, i put my texture PNG file into game's content folder, do an import... "Failed to create resource, is the file missing?" No it's not missing you dummy, you just listed the correct path to it! Ouch. A crash!

    Long story short and skipping over possibly dozens of crashes, i failed to find a way to make the texture work on import. I know it must work, because i can see other people creating their maps, so why can't i use a ready-made texture on my scenery?! And more importantly, why does it cause a crash?

    Judging by this topic i am not the only one with this problem, and this topic is already six months old. Why hasn't this been fixed? This is a five minute fix!

    ----------------------

    TL;DR i've spent a few hours figuring all of this out, when this could've been outlined in documentation or in a tutorial in five minutes. Which is what i am going to do once i get a hang of it. I may not be good at creating maps, but i sure as hell am better at writing tutorials than what i've seen so far.

    Also, if the codebase is properly maintained, these issues are found and fixed in literally fifteen minutes. I refuse to believe that no one from BeamNG had fifteen minutes to spare on this in a friggin year (if not more!). I understand that this is early access alpha, but seeing how this game has a strong modding community, you would think that modding tools would at least be a priority to be passable, accessible to newcomers and give informative errors if something failed!

    Look, don't get me wrong, i'm new here but i'm not just ranting for the sake of ranting. I want to help this game get better, because i'm having immense fun with it already. And to all of those who might say "well i made 100500 maps, so it's possible, just use google" - you're missing the point! Of course it's not that hard once you get a hang of it - it's starting that is hard (or, to be precise, harder than it should be)!

    I don't know, maybe this is because all of this happens in the content creation subforum, and actual developers are unaware of these issues, maybe i can file bug reports? I'm a software developer by trade, i know what it's like to develop software and to be unaware of bugs because no one bothered to talk to a developer. How can i help?
     
    • Like Like x 5
  2. Aboroath

    Aboroath
    Expand Collapse

    Joined:
    Aug 25, 2013
    Messages:
    3,804
    Nice post, conveys the general frustration level quite well.

    1: Torque3D is an open source engine being maintained by volunteers, no big money behind it.

    2: Because of this the BeamNG devs are taking the liberty to modify code as they see fit to make the ideas
    of the program work within' it.

    This situation creates a black hole of documentation as the devs are busy making the soft body physics system
    work and map making documentation is on the back burner. I don't know how else to explain it and as your post
    so eloquently describes, if you want it done do it yourself. Down the road things will be different but today it is
    a bizarre paradox I have grown tired of ranting about.

    EDIT: I need to do a shout out and thanks to all of the community members who have provided tutorials and
    gave advice and tips ( you know who you are :cool:!). Without you my experiences in map making would be pure shite!
     
    #2 Aboroath, Jun 7, 2016
    Last edited: Jun 7, 2016
    • Like Like x 2
  3. Burillo

    Burillo
    Expand Collapse

    Joined:
    Jun 6, 2016
    Messages:
    11
    are you saying that the map editor is actually open source and i can fix bugs in it? how often does BeamNG update from upstream then? i.e. if i fix a bug in Torque3D's editor, how long until it makes its way into BeamNG, roughly speaking? Months? A year?
     
  4. Aboroath

    Aboroath
    Expand Collapse

    Joined:
    Aug 25, 2013
    Messages:
    3,804
    Yes, as far as I know. If you intend major source code bug fixes I would certainly show what ya' know. The BeamNG devs are quite
    aware of the Torque3D development process and I believe at one time were involved with the steering committee.

    Whatever your intentions I would shunt any further queries to the devs themselves as I don't want to make any more enemies:p.

    In my opinion it would not hurt to try to correct an issue if you find one!
     
  5. bobby_boulgat

    bobby_boulgat
    Expand Collapse

    Joined:
    Aug 23, 2013
    Messages:
    453
    modding is an exercice of patience. If you had a technical problem, the modders will be glad to help you, if they can. Don't hesitate to ask questions at the concerning peoples, i supposed it's like me, theirs eyes watching only theirs creations.
     
    • Like Like x 3
  6. DoullPepper

    DoullPepper
    Expand Collapse
    BeamNG Team

    Joined:
    Nov 15, 2014
    Messages:
    593
    Good answer Bobby! Sure we are glad! ;)
     
    • Like Like x 1
  7. bobby_boulgat

    bobby_boulgat
    Expand Collapse

    Joined:
    Aug 23, 2013
    Messages:
    453
    il semblerait que j'ai compris de quoi il en retournait ;)
     
  8. Nadeox1

    Nadeox1
    Expand Collapse
    Spinning Cube
    BeamNG Team

    Joined:
    Aug 5, 2012
    Messages:
    14,683
    We are aware of how 'un-friendly' making a level is.
    There are some good written tutorials around, but they are scattered all around the place.
    Here's one for example: http://www.beamng.com/threads/tutor...or-beam-ng-in-depth-guide-with-pictures.2764/

    As the other said, BeamNG.Drive is using Torque3D as game engine (!= physics engine), and it being quite 'antiquated', some things are not as immediate to get.
    The team main focus is the game itself, not the editor for the time being (Because people paid for a game, not an editor).
    There is a long ToDo list regarding the editor, which will be more likely satisfied once the game is more advanced on the development side to allow us to spend some time on it instead of the game itself :)

    If you have problems, simpy ask, as you saw above, some of our community members are really awesome (Thanks guys!) and can you a hand sorting your doubts.
     
    • Like Like x 2
  9. austint30

    austint30
    Expand Collapse

    Joined:
    Aug 7, 2013
    Messages:
    219
    One thing that I noticed is that when making maps, MAKE SURE TO ALWAYS MAKE BACKUPS! I learned that the hard way several times. The map I was making, I had to redo it about 3 times due to the files being corrupted due to beamng crashing while in the world editor to accidentally deleting it or clearing the cache.

    NadeoX1, could the devs implement an auto-backup feature with custom maps? That would be extremely useful and really prevent some headaches in the future for map makers.
     
    • Like Like x 2
  10. G-Farce

    G-Farce
    Expand Collapse

    Joined:
    Apr 1, 2016
    Messages:
    585
    Honestly Nadeox half the frustration is all the information being scattered all over the forums and hard to find or either "old/dead thread" in which you should never comment in for some reason... That thread you linked is great. In all my searching I somehow missed it. Could you sticky it like a few other in depth guides? It would save allot of frustration for searching for tutorials.
     
    #10 G-Farce, Jun 14, 2016
    Last edited: Jun 14, 2016
  11. LJFHutch

    LJFHutch
    Expand Collapse
    Environment Artist
    BeamNG Team

    Joined:
    Aug 4, 2012
    Messages:
    667
    Quick overview:

    • The whole process requires a little bit of knowledge of script - I really mean that, you only need to know the barest amounts to be able to make a level, just keep in mind a mistake can make your level not work so make sure you work within the framework of an existing level
    • Start by copying an existing level and changing the names. I suggest the "template" level due to it's simplicity, things to change:
      • All material.cs files
      • The .mis file contents
      • All references to "template" in the file names themselves in the level's main directory
      • Both the .cs files in yourlevel/art/forest/ need to be updated
      • In general, all references to other levels need to be changed so your level is self contained, this isn't hard but if you don't do it you'll break things.
    • Always create new materials by hand in a text editor - this isn't as hard as it sounds, just copy an existing material, paste it and change the names, you can then edit it ingame after reloading your level
    • As was already said, always make backups
    Good luck!
     
    • Like Like x 1
  12. Burillo

    Burillo
    Expand Collapse

    Joined:
    Jun 6, 2016
    Messages:
    11
    sorry, been away for a while.

    yes, saw that one, but again, it doesn't explain how to create a level based on an already existing texture. this is partly why i got stuck and got loads of crashes - i have a height map, i have a texture for that height map, so it should be pretty easy - import height map, add texture, BAM, the terrain is ready. but even this basic thing ends up not working because there's something weird going on with relative/absolute paths.

    thanks, i've pretty much grasped that already. as i said above, i'm mostly stuck on the "import a heightmap with a texture" part - everything else, aside from relative path woes, seem to work - i can import and paint the trees, edit materials, paint road decals, make asphalt feel like dust, etc. the editor makes the rest pretty easy.
     
  13. bob.blunderton

    bob.blunderton
    Expand Collapse

    Joined:
    Apr 3, 2015
    Messages:
    3,289
    Export any existing level's heightmap (and you may have to dig around to find it!!! it doesn't always end up where you think!, sometimes in the beamng.drive documents folder)... find the file type it uses, you have to make sure that's the type you import. If you don't do that oddball 16-bit format that it wants, it makes molehills out of your mountains, basically - your rump will have more contour than your map will if you try to import a 32-bit heightmap format. Sorry, that's just the only way I know how to get the point across! You basically end up with a flat terrain just about if using 32bit when you should be importing 16bit. It took much finesse to figure out and more patience (patients) than an inner city doctor's office.
     
  14. yolo-phil

    yolo-phil
    Expand Collapse

    Joined:
    Dec 28, 2014
    Messages:
    201
    Hmm. I made my first Map with help of consuming a lot of beer. The Roads where a bit bumpy, but it was working.

    (Use the Template Map for a Start)
     
  15. Burillo

    Burillo
    Expand Collapse

    Joined:
    Jun 6, 2016
    Messages:
    11
    you've misread what i said. i already figured out that heightmap has to be 16-bit. i'm stuck at importing a texture for the map. i can paint in game, but i rather do it in dedicated tools, and import - but i can't figure out how to import a ready-made texture.
     
  16. Scepheo

    Scepheo
    Expand Collapse

    Joined:
    Feb 10, 2015
    Messages:
    601
    Assign it to the terrain materials in their materials.cs file.
     
  17. Burillo

    Burillo
    Expand Collapse

    Joined:
    Jun 6, 2016
    Messages:
    11
    thanks, i'll try that!
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice