1. #1
    Avatar von Anno1711 Kam, sah und tippte
    Registriert seit
    Nov 2011
    Beiträge
    218

    Island Creator für 2070/1404

    Pfannkuchen Insel war gestern heute gibts Ritter Sport Inseln
    quadratisch praktisch gut
    damits aufn screenshot past mal die kleinsten inseln genommen

    Ich hab ein Programm namens Island Creator geschrieben das Inseln und Unterwasserplateaus belieger größe erstellt mit allem was nötig ist Baufläche, Rohstoffvorkommen und eine Küste


    Hier mal die Erklärung wie eine Insel/Plateau aufgebaut ist und eine warnung hier ist mehr als nur grundkenntnise erfordlich um sie zu verstehen wer also nur mods benutzen kann brauch garnicht erst hier lesen wäre nähmlich nur zeitverschwendung

    Spoiler:  Show
    wenn man die dateien als textdatei speichern will muss man drauf achten das sie mit ISO/IEC 8859-1 kombiniert mit Sonderzeichen aus ISO/IEC 6429 gespeichert werden da ansonsten die bytes mit falschen werten abgespeichert werden
    deshalb eigent sich ein Hexeditor besser zum bearbeiten

    Die Bytes werden in den CDATA[] blöcken mit Little-Endian abgelegt
    in den ersten 4 bytes(32bit integer) steht die anzahl der noch kommenden bytes
    auserdem ist der 0 Punkt bei den inseln links unten anstat wie normal links oben

    schwarz = wird direkt so übernommen
    grün = nur insel
    blau = nur plateau
    ig = inselgröße
    CDATA[] = angaben inherhalb sind als bytewerte anzugeben
    rot = kommentare

    Code:
    <Width>ig</Width>
    <Height>ig</Height>
    <Clime>0 1</Clime>
    <Difficulty>0</Difficulty>
    <UsedChunks><m_XSize>ig / 16</m_XSize>
    <m_YSize>ig / 16</m_YSize>
    <m_IntXSize>1</m_IntXSize>
    <m_BitGrid>CDATA[ig/4 mit FF zufüllen]</m_BitGrid>
    </UsedChunks>
    <BuildBlockerShapes></BuildBlockerShapes>
    <CamBlockerShapes></CamBlockerShapes>
    <SurfLines></SurfLines>
    <CoastBuildingLines>
    Die Kontorbaubereiche werden mit polygonen  angegeben die einzelnen punkte bestehen aus je aus einem doblue wert für  x und für y koordinate
    hier mal ein beispiel für die 48 große quadrat insel normale inseln bestehen aus mehreren küstenzügen
    <i><Points><i>CDATA[    à       à      ]</i>links unten
    <i>CDATA[           à      ]</i>rechts unten
    <i>CDATA[                 ]</i>rechts oben
    <i>CDATA[    à             ]</i>links oben
    <i>CDATA[    à       à      ]</i></Points>rechts unten
    <Directions><i>0</i>süd
    <i>368640</i>ost
    <i>737280</i>nord
    <i>1105920</i></Directions>west
    </i>
    </CoastBuildingLines>
    <Lakes></Lakes>
    <Rivers></Rivers>
    Die angaben zum Rivergrid sind ohne gewähr auserdem hab noch keine flüsse benutzt
    <RiverGrid><m_XSize>ig</m_XSize>
    <m_YSize>ig</m_YSize>
    <m_IntXSize>ig/32</m_IntXSize>
    <m_BitGrid>CDATA[ig*ig/8 mit 00 zu füllen]</m_BitGrid>
    </RiverGrid>
    <SeaLevel>0 -28</SeaLevel>
    <Sandbanks></Sandbanks>
    <Fogbanks></Fogbanks>
    <TerrainNormalSplines></TerrainNormalSplines>
    <AnimalLayer><AnimalLayer><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer>
    <AnimalLayer1><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer1>
    <AnimalLayer2><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer2>
    <AnimalLayer3><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer3>
    <AnimalLayer4><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer4>
    <AnimalLayer5><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer5>
    <AnimalLayer6><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer6>
    <AnimalLayer7><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer7>
    <AnimalLayer8><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer8>
    <AnimalLayer9><m_AnchorPoints></m_AnchorPoints>
    <m_Connections></m_Connections>
    </AnimalLayer9>
    </AnimalLayer>
    <AIPoints></AIPoints>
    <ConstructionRecords></ConstructionRecords>
    <Volcanos></Volcanos>
    <SendExplorationMessage>1</SendExplorationMessage>
    Die Heigtmap gibt die tatsächliche höhe an, die einzelnen höhenangaben werden als 16bit integer angegeben die heigtmap in linienweise aufgebaut
    bei insel ist 00 84 der wert für tiefsee und CC 02 für baubereich
    bei plateaus ist 00 F0 der wert für tiefsee und 00 94 für baubereich
    <m_GOPManager><m_GRIDManager><m_HeightMap_v2>CDATA[ig*ig*2]</m_HeightMap_v2>
    Die beiden Pathblockerlayer hab ich auch noch nie benutzt deshalb auch angaben ohne gewähr
    <m_PathBlockerLayer><BitGrid><m_XSize>ig*2</m_XSize>
    <m_YSize>ig*2</m_YSize>
    <m_IntXSize>ig/16</m_IntXSize>
    <m_BitGrid>CDATA[ig*ig/2 mit 00 zu füllen]</m_BitGrid></BitGrid>
    </m_PathBlockerLayer>
    <m_HeightPathBlockerLayer><BitGrid><m_XSize>ig*2</m_XSize>
    <m_YSize>ig*2</m_YSize>
    <m_IntXSize>ig/16</m_IntXSize>
    <m_BitGrid>CDATA[ig*ig/2 mit 00 zu füllen]</m_BitGrid>
    </BitGrid>
    </m_HeightPathBlockerLayer>
    <m_SubmarineBlockerLayer><SubmarineLevelHeight>-98304</SubmarineLevelHeight>
    <SubmarineIslandBlockerRadius>16384</SubmarineIslandBlockerRadius>
    <BitGrid><m_XSize>ig</m_XSize>
    <m_YSize>ig</m_YSize>
    <m_IntXSize>ig/32</m_IntXSize>
    <m_BitGrid>CDATA[ig*ig/8 mit 00 oder FF zu füllen]</m_BitGrid>
    </BitGrid>
    </m_SubmarineBlockerLayer>
    </m_GRIDManager>
    <m_StreetGrid>CDATA[ig*ig mit 00 zu füllen]</m_StreetGrid>
    <Objects><Handle><Objects>Hier werden zum beispiel die Rohstoffvorkommen gesetzt erkären werd ich es aber seperat da es schon aufwendiger ist
     </Objects>
    </Handle>
    <Feedback><Objects></Objects>
    </Feedback>
    <Simple><Objects></Objects>
    </Simple>
    In Nature werden zb Bäume gesetzt und in Grass halt Gräser da es es aber die datei nur unnötig aufbläht lass ich sie aus
    <Nature><Objects></Objects>
    </Nature>
    <Grass><Objects></Objects>
    </Grass>
    </Objects>
    <SnapPartner></SnapPartner>
    <ObjectNames></ObjectNames>
    <ObjectGroups>wird zusammen mit den Rohstoffvorkommen erklärt
    </ObjectGroups>
    </m_GOPManager>
    hier beginnt die optische darstellung der insel selbst mit ihren höhen und tiefen
    <Terrain><Version>3</>
    <TileCountX>ig</>
    <TileCountZ>ig</>
    <TileCount>0</>
    <ChunkMap><Width>ig/16</>
    <Height>ig/16</>
    Die Darstellung werd ich auch seperat behandeln
    </>
    </>
    Jetzt kommen wir zun den Rohstoffvorkommen
    Code:
    <Object><m_ID>Hier müsst ihr für jedes Object eine eigene id vergeben sie muss innerhalb der insel einzigarteig sein sonst gibts es da keine beschränkungen durchnummerieren ist am einfachsten</m_ID>
    <m_GUID>Die GUID gibt an um was für ein object es sich handel ich liste mal auf welche guid zu welchen object gehört
    335 = Mine
    342 = Minenpfad
    350 =  Flussbauplatz
    347 = Hummerbank
    344 = Schuttablagerung
    349 = Ölvorkommen
    340 = Black Smoker
    und es gibt natürlich noch etliche mehr hab ich darum aber nicht bemüht
    </m_GUID>
    hier wird die tatsächliche position angegeben
    <m_Position>CDATA[Die positions angaben werden mit 4096 multipliziert und dann als 64bit Integer abgelegt die reihenfolge ist x y z]</m_Position>
    <m_PlayerID>15</m_PlayerID>
    <m_Direction>Die richtung angeben hab bis jetzt nur die 0 als richtung verwendet</m_Direction>
    <Blocking></Blocking>
    Hier wird unter anderem die dargestellte prosition angegeben leider hab ich bis jetzt nur die bedeutung der x z und y koordinaten herausgefunden der rest ist copy paste aus anderen inseln 
    <PropertyMesh><m_RenderParameters>CDATA[als singel ist x index 34-37 y ist 42-45 ]</m_RenderParameters>
    </PropertyMesh>
    </Object>
    ----------------------------------------------------------------------------------------------------------------------------------
    in den Objectgrups werden die m_ID's der zusammengehörigen objecte wie Mine und Minenpfad als 32bit integer hintereinander angeben
    <i>CDATA[]</i>
    Hier nun die Inseldarstellung
    Code:
    Die darstellung ist in 16x16 größe blöcke aufgeteilt, das sie 17 breit sind liegt daran das sich die texture den rand mit dem nächsten block teilt
    <Element><VertexResolution>4</>
    <HeightMap><Width>17</>
    In der Heightmap stehen die höhenangaben als single für jeden der 289 punkte
    33 33 33 3F = normalhöhe für insel
    00 00 D8 C1 = normalhöhe für plateau
    00 00 40 C2 = Meeresgrund
    <Data>CDATA[17*17*4]</>
    </>
    <Flags>
    131073 = inland
    131072 = inplateau
    196608 = küste und tiefsee
    </>
    Die Grundtexture mit dem TextureIndex von 0 ist in jeder Alphamap vorhanden mann kann nach belieben noch texturen hinzufügen
    <TexIndexData><TextureIndex>
    0 = Grundtexture
    52 =  Grastexture
    79 = Strandtexture
    78 =  Plateautexture
    </>
    Es gibt natürlich noch jede menge mehr an texturen die hier reichen mir aber aus
    <AlphaMap><Width>17</>
    <Data>CDATA[17*17 für jeden punkt wird die deckkraft als byte angegeben]</>
    </>
    </>
    Die texturen werden ihrer reihenfolge entsprechend übereinander gelegt 
    </>
    ich denke es ist am einfachsten wenn ihr euch ne 48 große insel erstellt da die noch am übersichlichsten ist und alls vorhanden ist und mit dem text hier die inseln versteh lernt
    Share this post

  2. #2
    Avatar von Tycooner1994 Forum Veteran
    Registriert seit
    Jan 2012
    Ort
    Lübeck
    Beiträge
    1.959
    Respeckt

    auf solchen insel größe stadte würde bestimmt gut ausehen, aber mir ein wenig zu flach
    aber wenn man richtig überlegt
    "die der meeresspiegel verschlang immer mehr Land nun haben wir die lösung sandaufschüttungen "

    finde aber die idee und die sache sehr gut.

    wenn du soweit es schafst gehen auch andere vormate ?
    Share this post

  3. #3
    Bei aller Liebe für die Arbeit, aber nu wird's dann doch irgendwie ......affig

    Was soll daran schön sein? Unnatürlicher geht's nimmer ich selber würde mir niemals so eine Map drauf machen.
    Share this post

  4. #4
    Avatar von Trickdieb Junior Mitglied
    Registriert seit
    Dec 2012
    Beiträge
    95
    Sehr interessant.
    Kannst du erklären wie man jetzt so eine Insel erstellt und sie auch in eine Inselwelt einbauen kann?
    Share this post

  5. #5
    Avatar von Judekw Kam, sah und tippte
    Registriert seit
    Oct 2011
    Ort
    Düsseldorf
    Beiträge
    692
    Hab ich was verpasst? Wo gibt's denn nen Inselcreator? Arbeitest du daran etwa, Anno1701? Das fänd' ich ja klasse

    Sehe ich das richtig, dass du auf dem ersten Bild ne durchgängige Inselfläche hast? Wie krass ist das denn

    Edit: Oja hast du! TOPPPPP!
    Share this post

  6. #6
    Avatar von Anno1711 Kam, sah und tippte
    Registriert seit
    Nov 2011
    Beiträge
    218
    @tycooner1994
    quadratisch ist ja die einfachste inselform in anno vorallem weil die meiste arbeit hat man mit der optischen darstellung
    und da das aussehen der insel auch möglichst genau mit deren bebaubarkeit übereinstimmen soll ist jede andere form wesentlich aufwendiger

    @trickdieb
    grundkenntisse mit dem rda explorer und mods algemein setzte ich vorraus deshalb nur ne kurze erklärung
    such dir die namen und die größe der inseln raus die ersetzten willst, erstell sie mit dem programm, dann packst du sie zb. in die patch8.rda (da must du aber noch die ordner erstellen)
    wobei die methode eher nur zum experiementieren gedacht ist besser gibts den neue namen wie zb n_q01.isd und u_q01.isd dann noch in der entsprechenden .tww die neuen namen anpassen
    größere inseln als 256 hab ich nur in einer mission zum laufen gebracht
    Share this post

  7. #7
    Jetzt mal ehrlich.

    Was soll so ein Käse hier? Mit deiner Anleitung, welche im Grunde gar keine ist wird sich hier jeder der es versucht ohne Super Kenntnisse sein Anno Bodenlos zerbröseln.

    Wenn man hier was reinstellt, wie deine ominöse exe Datei dann sollte man auch eine Info, Erklärung etc. beifügen und nicht 2 Sätze hinklatschen.

    Daher reportet fürs löschen. Entweder gibt man sich Mühe oder man lässt es sein.

    Der Gedanke mag zwar okay sein aber das wars auch.
    Share this post

  8. #8
    Avatar von Trickdieb Junior Mitglied
    Registriert seit
    Dec 2012
    Beiträge
    95
    Zitat von Anno1711 Go to original post
    @trickdieb
    grundkenntisse mit dem rda explorer und mods algemein setzte ich vorraus deshalb nur ne kurze erklärung
    such dir die namen und die größe der inseln raus die ersetzten willst, erstell sie mit dem programm, dann packst du sie zb. in die patch8.rda (da must du aber noch die ordner erstellen)
    wobei die methode eher nur zum experiementieren gedacht ist besser gibts den neue namen wie zb n_q01.isd und u_q01.isd dann noch in der entsprechenden .tww die neuen namen anpassen
    größere inseln als 256 hab ich nur in einer mission zum laufen gebracht
    Wie willst du sie erstellen?
    Das Programm kann nur speichern, sonst nichts. Und zwar ohne spezielle Dateiendung.
    Also, da musst du wirklich mal ein besseres How To für schreiben und das anhand von Beispielen und Screenshots darstellen.
    Share this post

  9. #9
    Avatar von Torp_Edo Kam, sah und tippte
    Registriert seit
    Nov 2011
    Beiträge
    151
    @Annothek:
    Ich denke du hast deine abfällige Meinung über dieses Projekt jetzt ausreichend bekundet.
    Danke, reicht. Wir wissen jetzt das Du davon nichts hältst und es nicht benutzen möchtest.
    Konsequent wäre es nun diesen Thread einfach mal zu ignorieren.

    Leider bist Du aber wohl der Meinung anderen vorschreiben zu können, was sie
    gut finden sollen und was nicht. Stell dir mal bitte vor, es gibt evtl. andere Spieler die Rekordbau
    für absoluten Quatsch halten. Sowas soll möglich sein, andere Menschen mit anderen Meinungen!
    Und jetzt stell dir mal vor diese Menschen würden in dein Forum kommen und eine ähnliche Forderung stellen:

    "Rekordbau, so'n Quatsch meiner Meinung nach. Hört doch bitte mal mit diesem Rekordbau-Käse auf!".

    Schätze mal Du würdest dich extremst auf die Füsse getreten fühlen (und vielleicht gleich mal wieder beleidigt
    deine Seite schließen (angeblich für immer), um sie dann 'ne Woche später wieder aufzumachen ).

    Desweiteren ist es nicht dein Ding wenn andere sich hiermit ihr Anno "zerbröseln".
    Die werden dann kaum von DIR in deinem Forum verlangen, das Du das Problem dann löst.
    Und wenn sie dann in diesem Forum deiner Meinung nach "dumme Fragen" stellen gibt es eine
    wunderbar einfache Lösung für Dich: Du brauchst keine Lösung anbieten, einfach weiterlesen/ignorieren.

    Also, man kann zu allem eine Meinung haben, ist aber NICHT verpflichtet diese ständig kundzutun.
    Ich glaube Du warst damals von den Anno-Dauernörglern, die ständig mitteilen mussten wie blöd sie
    das neue Anno fanden, auch genervt. Denen wurde dann nämlich das gleiche entgegnet, das es reicht seine
    Meinung einmal kundzutun.
    Einfach mal drüber nachdenken. Danke.


    @Anno1711:
    Ich kann verstehen das Du den Creator so "unfertig" hier reinschmeisst, einfach um mal zu sehen ob es sich
    lohnt weiteren Aufwand zu betreiben. Sieht so aus, als ob da Interesse besteht :-)
    Weiter machen!
    Share this post

  10. #10
    Avatar von Judekw Kam, sah und tippte
    Registriert seit
    Oct 2011
    Ort
    Düsseldorf
    Beiträge
    692
    Ich sehe das ähnlich wie Torp_Edo. Wer hier in die Modding-Foren kommt, muss sich bewusst sein, dass ein gewisses Know-How von Nöten ist, um eine abstrakte Modifikation ans Laufen zu bringen und dass es auf eigenes Risiko passiert. Gerade deswegen bietet Ubi ja auch keinen Support für Mods an.
    Zwar mag es weniger komplizierte Angebote für ein breiteres Publikum geben, z.B. Neos oder meinen Mod, das Modding-Forum und wir Modder stehen meiner Meinung nach jedoch nicht in der Pflicht, unsere Arbeiten für jeden noch so unerfahrenen Nutzer zugänglich zu machen. Manchmal richtet sich ein Mod - wie eben dieser hier - nur an andere Modder und das ist absolut legitim.

    Deine Reaktion, Annothek, um eine Löschung des Threads aufgrund mangelnder Nutzungsbeschreibung zu bitten, ist meiner Ansicht nach absolut überzogen und zeugt von Unverständnis gegenüber der Moddingcommunity. Wer sich an einer Mod stört, ignoriert sie. Fertig.

    Edit: Zumal es nicht so ist, dass Anleitungen gelesen werden würden. Zu meiner Mod wurden zich Anleitungen und How-To's gepostet, selbst in ChangeLog und Tooltips stehen Anleitungen und Nutzungstipps zu einzelnen Features. Und trotzdem höre ich immer wieder die selben Fragen.
    Share this post

Seite 1 von 7 123 ... Letzte ►►