You must be logged in to post messages.
Please login or register

Scenario Design
Moderated by MosheLevi, Mister SCP

Hop to:    
loginhomeregisterhelprules
Bottom
Topic Subject: AOE3 Random Map Scripting Tutorial
« Previous Page  1 2  Next Page »
posted 12-01-05 10:12 PM EDT (US)   

AOE3 Random Map Scripting Tutorial

Welcome to Hyena Studios' Random Map Scripting (RMS) Tutorial for the Age of Empires III (AOE3) game. Below you will find a step-by-step tutorial to create your custom random maps for playing in skirmish mode - offline and online. This tutorial is suitable for both beginners and advanced random map scripters. If you are new to random map scripting you should read all FAQ's first, even if you know RM scripting from the Age of Kings (it is completely different) or Age of Mythology game. Chapter I is the main tutorial chapter. Chapter II will explain all predefined commands you will find in an AOE3 RM script.

Contents:

  • It will give answers to the most asked questions about custom maps, posted in popular forums.
  • The tutorial will explain the basics, the first and advanced steps to create your own custom maps.
  • It will explain how to test your maps using the AOE3 build-in XS Debugger.
  • It is the HUGEST but fast loading map tutorial the Age Community has ever seen on a single page!
  • and, and, and ...
    READ IT HERE!

    Here are some "eye-candies" of the tutorial:


    The XML Features:

    The XS Debugger:

    The tutorial is still a bit under construction - new commands will be added soon, but, til you have read all it will be finished. Feel free to post comments and suggestions here.

    Current replies from ES official forum at "www.agecommunity.com":

    Quoted from ES_Thunder:

    "That looks like a great read M0nTy, well done."


    I also want to post some FAQ's here - concerning scenarios and random map scripting (also included in the tutorial):

    FAQ's:

    Q: Why can I not play my custom scenarios in skirmish mode?
    A: Only random maps can be played in skirmish mode.

    Q: How do I convert my scenario into a random map/skirmish map?
    A: You can't. A scenario is a map with a fixed size, player number, terrain, buildings, etc.
    A random map/skirmish map will be generated new each time it gets started,
    and with the random commands you will learn to create in the tutorial posted in the topic.

    Q: Can I play my custom scenarios online?
    A: Not yet. You will have to wait for a game patch with a version higher than 1.02 .

    Q: Can I play my custom random maps online?
    A: Yes.

    Q: I joined a custom random map online. Can I host this map now?
    A: Yes. When you join a game with a custom map online, the map will be automatically transfered onto your computer. In the game hosting menu you press the "Custom Maps" button on the upper right screen and the custom maps will appear for selection.

    Q: I played a custom random map online. Where do I find the map files on my computer?
    A: You will find the custom random maps in your windows profile directory. This is usually
    "C:\...\My Documents\My Games\Age of Empires 3\RM\".
    Each map consists of 2 files (*.xs and *.xml) - more informations in the tutorial above.

    Q: I am new to RMS. How long does it take to make my first own RMS?
    A: Long! You will need several hours to be able to correctly modify an already existing map, and a few weeks to create you very own random map from scratch. But, modifying maps makes MUCH fun and will enormously help you learning the commands.

    Q: Why is there no RMS Editor for AOE3?
    A: First of all, Ensemble Studios - the developers of AOE3 - do not support custom maps at all. They never did it in the past with AOE, AOK, AOM, and they will not do it in future. The main reason is: It is just too complicated for the regular players. Furthermore, it makes no sense in creating a drag'n drop menu for RM scripting, since RM's are dynamic/random. So, be happy to have this tutorial here - made by a fan of this game. And, I hope it is also a bit of entertainment for you
    ...

    Regards,
    M0nTy_PyTh0n.


    M0nTy_PyTh0n
    RM Scripter - Utility Programmer - Music/Sound Composer/Creator
    HYENA STUDIOS
    Also on YouTube and MySpace
    Partner of Tsunami Studios - Sound and Music Composer
    All rights reserved.

    [This message has been edited by M0nTy PyTh0n (edited 12-03-2005 @ 06:03 PM).]

  • Replies:
    posted 12-02-05 06:45 AM EDT (US)     1 / 31  
    Excellent article!

    I was wondering about adding to the stringtable for creating the RM description test...it works, but does anyone know if it causes problems playing online?

    Also, do you think it's too much of a hassle to replace the stringtable with a modified one?


    "I take it that this is the Anastasia Scud pines for?" - Epic Commander
    "What Ana said. Use sugar and the whip." - aka the Pilot
    "I think you will realize the emphasis was on Ana and Cake." - Monk
    posted 12-02-05 12:49 PM EDT (US)     2 / 31  
    I'm pretty sure, you can modify stringtable as you desire. It contains no gameplay relevant datas and I don't assume that each different language version is checked for o.o.s. or patch.
    In emergency one can recover from inst. CD. or simply make a backup before modifying.
    posted 12-02-05 04:27 PM EDT (US)     3 / 31  
    Nice job...makes the hieroglyphics seem a bit more friendly.
    posted 12-02-05 04:44 PM EDT (US)     4 / 31  
    Anastasia - I tried having the stringtable file replaced for that reason during the AOE3 Demo - several people complained it screwed up their game but I suspect they made an error in the replacement somehow. Anyway, it is not an elegant solution.

    MOnTy - have tried using the debugger as you have suggested but it does not seem to work for me. My map does not load, and there is no info in the debugger to point to my error. I also tried just playing the random map in Skirmish after starting the game with the debugger on - the debugger window pops up but there is no useful info in it, just as when I start it in the ScenEditor. I used the debugger in AOM with success. Any ideas?

    posted 12-02-05 06:07 PM EDT (US)     5 / 31  
    Thanks BilboBeutlin!

    Thanks RF!
    Yes, I did my tests in response to your post of long ago.


    "I take it that this is the Anastasia Scud pines for?" - Epic Commander
    "What Ana said. Use sugar and the whip." - aka the Pilot
    "I think you will realize the emphasis was on Ana and Cake." - Monk
    posted 12-02-05 06:56 PM EDT (US)     6 / 31  
    Thank you for the complements.

    Quoted from RF_Gandalf:

    MOnTy - have tried using the debugger as you have suggested but it does not seem to work for me. My map does not load, and there is no info in the debugger to point to my error. I also tried just playing the random map in Skirmish after starting the game with the debugger on - the debugger window pops up but there is no useful info in it, just as when I start it in the ScenEditor. I used the debugger in AOM with success. Any ideas?


    Strange, because I could see the error lines in the debugger. Have you used all steps I showed in the tutorial here? Remember, you must not have files with the same names in both the aoe3 profile and aoe3 installation folder. This causes errors. Maybe this helps.

    Regards,
    M0nTy_PyTh0n.


    M0nTy_PyTh0n
    RM Scripter - Utility Programmer - Music/Sound Composer/Creator
    HYENA STUDIOS
    Also on YouTube and MySpace
    Partner of Tsunami Studios - Sound and Music Composer
    All rights reserved.
    posted 12-04-05 02:52 PM EDT (US)     7 / 31  
    just a question i couldnt find the answer in your guide:

    how to place groupings?


    check my stats

    Proud creator of the FIRST King Of The Hill Map for AoE3

    My blog <<---- updated daily

    posted 12-04-05 04:03 PM EDT (US)     8 / 31  
    Read this

    oh you can wait for what I can give
    you know what I am so you know how I live
    try to look proud but you’re not in the slightest
    its happening now and it’s always been like this.
    posted 12-04-05 04:16 PM EDT (US)     9 / 31  
    Very nice article - lots of detail and step by step.


    btw, You forgot to capitalize the i in rmRandInt - might throw off a newbie lol

    posted 12-05-05 01:30 PM EDT (US)     10 / 31  
    @HgEuAaVrEdN:
    Papaya already posted a link to wiki, to RF_Gandalfs article. However, I will add new commands for groupings, trade routes, natives and also some nice new features for cliffs to the tutorial soon.

    @Papaya:
    My tutorial was again published at "Age of Wiki" without permission. Please remove. Better also tell this Spitfire.

    @pftq:
    Thanks. The "rmRandInt" command appears correct in the tutorial, hm..

    Regards,
    M0nTy_PyTh0n.


    M0nTy_PyTh0n
    RM Scripter - Utility Programmer - Music/Sound Composer/Creator
    HYENA STUDIOS
    Also on YouTube and MySpace
    Partner of Tsunami Studios - Sound and Music Composer
    All rights reserved.
    posted 12-05-05 05:29 PM EDT (US)     11 / 31  
    @ M0nTy: Yes, I noticed, it's gone now, I'll tell spit to stop posting it.

    EDIT:

    Quote:

    Reposted to AgeofWiki with permission


    Whats that about then?

    oh you can wait for what I can give
    you know what I am so you know how I live
    try to look proud but you’re not in the slightest
    its happening now and it’s always been like this.

    [This message has been edited by Papaya (edited 12-05-2005 @ 05:34 PM).]

    posted 12-05-05 06:22 PM EDT (US)     12 / 31  

    Quoted from Papaya:

    Whats that about then?


    This should tell Spitfire me in first place ... but enough of copyright issues here now.

    Regards,
    M0nTy_PyTh0n.


    M0nTy_PyTh0n
    RM Scripter - Utility Programmer - Music/Sound Composer/Creator
    HYENA STUDIOS
    Also on YouTube and MySpace
    Partner of Tsunami Studios - Sound and Music Composer
    All rights reserved.
    posted 12-05-05 08:25 PM EDT (US)     13 / 31  
    @ M0nTy: Ok, I cleared it up with Spitfire, here is the chat log:

    [18:21] Papaya: Why did you post M0nTys article on the wiki?
    [18:22] Spitfire: Vandhaal did dude
    [18:22] Spitfire: Go look at the log
    [18:26] Papaya: (Link)
    [18:27] Papaya: well?
    [18:28] Spitfire: wait, was that a link?
    [18:28] Spitfire: Also, didn't he give use permission now?
    [18:28] Spitfire: I AM SO CONFUSED
    [18:28] Papaya: No, he didn't give us permission
    [18:28] Papaya: And yes, that was a link
    [18:28] Spitfire: Why did I think he did?
    [18:28] Papaya: Well, I edited it
    [18:29] Spitfire: Despite most impressions, I'm not totally insane
    [18:29] Spitfire: "You can add the new (and also first) AOE3 RMS Tutorial for beginners and also for advanced RM Scripters to your topic." - M0nty_Python in sticky thread
    [18:29] Spitfire: that is why I thought he said we could post it
    [18:30] Spitfire: Now that I read it again, I realize he meant "LINK TO the new tutorial"
    [18:30] Spitfire: See! I'M NOT CRAZY!

    It also gave me the opportunity to add another quote to my sig


    oh you can wait for what I can give
    you know what I am so you know how I live
    try to look proud but you’re not in the slightest
    its happening now and it’s always been like this.
    posted 12-05-05 08:36 PM EDT (US)     14 / 31  
    @Papaya:
    Ok - it should be clear now

    M0nTy_PyTh0n
    RM Scripter - Utility Programmer - Music/Sound Composer/Creator
    HYENA STUDIOS
    Also on YouTube and MySpace
    Partner of Tsunami Studios - Sound and Music Composer
    All rights reserved.
    posted 12-05-05 10:58 PM EDT (US)     15 / 31  
    Thanks for writing this up M0nTy, it looks very comprehensive. I'm looking forward to creating some maps for AOE3 this winter .

    Programmer on 0 A.D., author of Norse Wars, co-author of Fort Wars.
    posted 12-05-05 11:11 PM EDT (US)     16 / 31  
    good news, Matei, looking foward to it. Maybe we can create a new map by changing hints

    M0nTy_PyTh0n
    RM Scripter - Utility Programmer - Music/Sound Composer/Creator
    HYENA STUDIOS
    Also on YouTube and MySpace
    Partner of Tsunami Studios - Sound and Music Composer
    All rights reserved.
    posted 12-12-05 05:18 PM EDT (US)     17 / 31  
    Tutorial was updated:
    · improved explanations for unit/terrain/trigger lists
    · improved explanations for inserting triggers
    · explanations for inserting trade routes
    · and more ...

    Regards,
    M0nTy_PyTh0n.


    M0nTy_PyTh0n
    RM Scripter - Utility Programmer - Music/Sound Composer/Creator
    HYENA STUDIOS
    Also on YouTube and MySpace
    Partner of Tsunami Studios - Sound and Music Composer
    All rights reserved.
    posted 12-21-05 11:15 PM EDT (US)     18 / 31  
    Merry Xmas from Hyena Studios.

    Regards,
    M0nTy_PyTh0n.


    M0nTy_PyTh0n
    RM Scripter - Utility Programmer - Music/Sound Composer/Creator
    HYENA STUDIOS
    Also on YouTube and MySpace
    Partner of Tsunami Studios - Sound and Music Composer
    All rights reserved.
    posted 12-22-05 02:52 PM EDT (US)     19 / 31  

    Quote:

    MOnTy - have tried using the debugger as you have suggested but it does not seem to work for me. My map does not load, and there is no info in the debugger to point to my error. I also tried just playing the random map in Skirmish after starting the game with the debugger on - the debugger window pops up but there is no useful info in it, just as when I start it in the ScenEditor. I used the debugger in AOM with success. Any ideas?

    You have a syntax error somewhere in your code. If you forget, say, a closing bracket or a semicolon, then the map won't load at all and the debugger won't show anything useful.

    The best way to avoid this is probably to code small bits at a time and constantly re-create the map, so you don't need to look through all your script when looking for the problem.

    The debugger only helps in cases where the script is compiled successfully (i.e. no syntax problems). For instance, when you forget to initialize a parameter the script will compile, but then the debugger will stop at the point when you first try to use it.

    posted 12-23-05 11:26 PM EDT (US)     20 / 31  
    Nice tutorial Monty, I've already put it to use.

    I've been playing around with some functions you haven't mentioned such as rmCreatePieConstraint and was wondering if you wanted me to send you anything I figure out to help expand on your tutorial?

    Also, being AoE3 uses an enhanced version of the RMS engine from AoM, you can add the trigonometry functions I made to your tutorial if you'd like.

    http://aom.heavengames.com/scendesign/rms/trig


    Signature on strike. Local 827.

    Volcanic Island - The Void - Lost Woods
    Please rate & review them after you play.
    posted 12-24-05 00:14 AM EDT (US)     21 / 31  
    Great stuff Wolfenhex!

    Yea, I wish there was an updated list of functions. Maybe we could add our knowledge to the AgeofWiki and create a large list of known functions?


    posted 12-24-05 11:39 AM EDT (US)     22 / 31  
    Thanks Elpea.

    I'm bad at writing up things for people to understand, I'd rather just pass the general facts I find to someone else and let them make it easy to understand.

    Interesting glitch(?)...

    This is what ES uses to put an object near the water, but it actually doesn't work...
    rmCreateTerrainDistanceConstraint("Near Water","Water",true,2.0);

    But you can do this and have the same result...
    rmCreateTerrainDistanceConstraint("Near Water","Land",true,-2.0);


    Signature on strike. Local 827.

    Volcanic Island - The Void - Lost Woods
    Please rate & review them after you play.
    posted 12-24-05 11:50 AM EDT (US)     23 / 31  
    Gah, trigonometry is misspelled in that article's title .

    My array generator also works for AoE3 and is pretty useful for making RMS code more manageable.


    Programmer on 0 A.D., author of Norse Wars, co-author of Fort Wars.
    posted 12-24-05 04:06 PM EDT (US)     24 / 31  
    Matei agrees I shouldn't write help!

    Signature on strike. Local 827.

    Volcanic Island - The Void - Lost Woods
    Please rate & review them after you play.
    posted 12-24-05 05:11 PM EDT (US)     25 / 31  
    Lol, no way, your article was simple and nice.

    Plus, in a wiki anyone can edit the article and make it simpler at any time.


    « Previous Page  1 2  Next Page »
    Age of Empires III Heaven » Forums » Scenario Design » AOE3 Random Map Scripting Tutorial
    Top
    You must be logged in to post messages.
    Please login or register
    Hop to:    
    Age of Empires III Heaven | HeavenGames