Schnelle Bewegung auf der Karte. Hilfe!

  • Hi,

    der Burgwechsel selbst ist zum Teil hardgecoded im SourceCode. Da brauchts du das Programm Delphi 4 oder Delphi 10.


    Ich bin mir nicht genau sicher, was du möchtest, denn neue Karten und der Burgwechsel sind zwei verschiedene Sachen.

    ->Du kannst auch auf englisch schreiben. Das ist bei uns kein Problem. ;)

    Wo ich bin klappt nichts,...
    aber ich kann ja nicht überall sein.

  • I'll try to explain

    For example, I created a map inside a castle. Set up transition points from it and into it. (no conditions yet)

    The text of the script for moving to the location:

    Code
    ifcurrent; 
    loadmap(merchantsbailey,default,levelpoint1|#OB1B.GS2#|ibailey01,default,levelpoint1);
     endif; 


    The text of the exit script to the location:


    Code
     ifcurrent;
     loadmap(ob1b,day,levelpoint3|#OB1B.GS2#|ibailey01,default,levelpoint1); 
    endif; 


    Code
     "|#OB1B.GS2#|ibailey01,default,levelpoint1)"

    - I just copied this piece, it brings up a picture with a map of the entire castle and the ability to quickly move around it when you go, for example, from the outer valley to the southern gate. "Click on the desired part of the castle -> it is highlighted in red -> double click - move in" How to do this with a new area? Interface pictures "***Available.bmp","***Unvailable.bmp" and "Cut***.bmp" I have. Do I need to edit the sybmols.english.ini file?

  • Ah, so adding a map in the castle with a transitpoint on the transition screen of the castle.


    In this case you also have to edit the Source Code (to be more precise the file which is called Transit.pas). Add the map + the procedures for this map and compile it with Delphi 4 if you use the old one or Delphi 10 if you use the new one.

    Wo ich bin klappt nichts,...
    aber ich kann ja nicht überall sein.

  • Sounds difficult. :eek: Sorry, I'm not a programmer. I can intuitively understand how to edit Transit.pos, but...I don't know how to compile the project into an exe. The question is primitive, I know, but could you tell in detail, step by step? :???:

  • If you have the steam/gog version then it's a bit easier. First you need a programm called Delphi. The current version is 10.4. The Community Edition can be downloaded for free.

    Start Delphi and open the Project file, edit the transit.pas file and then compile the project.

    If you have the classic version of SoA it'll be quite tricky since:

    1. There is even more to do codewise

    2. it's not so easy to get Delphi version 4.


    If you don't know much about programming, it will take you several hours to accomplish what you want.

    Therefore you can take this siege.exe instead, as long as the lvl-file is called merchantsbailey.lvl. This should do the trick, since the "merchant's bailey code" was already added for Ashes of Avalon and I only needed to make it active anytime, not only when playing the Story of AoA:

    Link deleted.

    Wo ich bin klappt nichts,...
    aber ich kann ja nicht überall sein.

  • I have a steam/gog version, with patch 1.09.

    I didn't work with Delphi 10 (I'm not a programmer), how to compile the project?


    Thanks, but what if I want to add the rest of the castle areas as well (I know many have already been implemented in the mod, but I want to make my own)? I want to learn. It turns out with one - the rest too.


    Oh, or I have a better idea: Let me create maps, write you their name, and you will help - create transits. After that, I can do the filling myself. Good idea?


    Maps and image titles:


    1)merchantbailey(Merchant'sBaileyAvailable,Merchant'sBaileyUnavailable)

    2)soldierbailey(Soldier'sBaileyAvaliable,Soldier'sBaileyUnavaliable)

    3)trainingbailey(TrainingBaileyAvaliable,TrainingBaileyUnavaliable)

    4)noblebailey(NobleBaileyAvaliable,NobleBaileyUnavaliable)

    5)cattlebailey(CattleBaileyAvaliable,CattleBaileyUnavaliable)

    6)peasantbailey(Peasant'sBaileyAvaliable,Peasant'sBaileyUnavaliable)

    7)wharfbailey(Wharf'sBaileyAvaliable,Wharf'sBaileyUnavaliable)

    8)wharfs(WharfsAvaliable,WharfsUnavaliable)

    9)westerngate(WesternGateAvaliable,WesternGateUnavaliable) + Intermediate levels:CutWesternGateLev1,CutWesternGateLev2,CutWesternGateLev3,CutWesternGateBas


    If necessary - a map with approximate borders. I will be immensely grateful to you! The rest of the work (creating pictures, maps, etc.), which does not require intervention in the source code, I will do myself.

    P.S. I do not use mods, the areas are needed in the main game.

  • Problem. Now moving between locations does not work. I can move between floors of the inner castle... that's all. On other movements, to other locations, the character freezes. Is it just because there are not enough images for all areas? (then I'll fix it quickly) or a bug in the code?

  • 1) "TTransit.InitDatei D:\SoA\Interface\CattleBaileyAvaliable kann nicht geoffnet werden." - Yes, images are missing. I will fix this quickly.
    2)"TTransit.MouseDownZugriffsverletzung bei Adresse 740AAEE9 in Modul 'ddraw.dll'. Lesen von Adresse 00000004"- Should I use Custom DDraw?

  • Ah, i didn't recognize the missing .bmp in .../interface/CattlebaileyAvailable and yes I've forgot to add .bmp in some filenames.

    Why is the error in your siege.log "[...] kann nicht geöffnet werden." in german actually? :lol:

    ->Updated:

    SiegeTransitcomplete.zip

    The coordinates for the images for Wharfs and WesternGate can be wrong, since I don't know the exact coordinates yet.

    Wo ich bin klappt nichts,...
    aber ich kann ja nicht überall sein.