Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

How to REPLACE Lorencia successfully

Put Community First
Loyal Member
Joined
Oct 2, 2014
Messages
1,113
Reaction score
832
Hey all,

So, you're sick of reskins too and want a new map for Lorencia, yes? Maybe Arkonia? It is possible, despite the random crashes. This guide will hopefully be a handy resource for new skinners wanting a completely new map for Lorencia. What it won't address is how to change the starting spawn coordinates.

DISCLAIMER: I am known for my brain automatically making things harder than they need to be, so there might be an easier way to accomplish this. But I've never seen anyone fully replace Lorencia, so I will assume this is the first (and only?) guide.

Tools required:





The map you want to use (I'll be using Arkania).

Part 1: Ground textures, and other nice, easy things

Back-up your existing World1 files in a Backup subfolder. This makes our work a lot easier to revert if we make a mistake. Rename your new .map and .obj files to EncTerrain1 to match Lorencia, but name your .att file NewMapATT.att, because we can only use this for an overlay to remake, which I'll explain later. Also open the Object1 folder and back-up these files in a Backup subfolder. You now need to open PentiumTools and open the .map and .obj folders, and up top change their map number to 0.

Part 2: The easy (but unfortunate) stuff

Okay, the bad news first. Lorencia's object references are hard-coded into the main.exe, which means we cannot add additional objects beyond what is there. This makes extra work for us, but the good news is that it isn't much. But extra work is still annoying, so :thumbdown:. Technically, we could modify the existing .obj file that comes with the map with new objects IDs and save inserting each object by hand, but this tutorial will cover the manual way because it's a lot easier than finding a mistake in 4000 lines of a .obj file.

Load up the map you want to use in the world editor, and select an object. Note the object name on the right-hand side of the editor. This is the file you'll need to grab from this map to port into Lorencia. Before doing this however, open up Notepad/Excel/other spreadsheet program and make a list containing columns Original Obj Name, New Obj Name, X, Y, Z, Rotation and Scale. This makes all the stat gathering a lot easier. Not only are Lorencia's objects hard-coded, but there is also two objects for each item. Click the spoiler tag below to open the list of default Lorencia objects that we need, and below that I'll explain how the whole process will work.

Lorencia Object Reference List
ID Object Name
0 Tree01
1 Tree02
2 Tree03
3 Tree04
4 Tree05
5 Tree06
6 Tree07
7 Tree08
8 Tree09
9 Tree10
10 Tree11
11 Tree12
12 Tree13

20 Grass01
21 Grass02
22 Grass03
23 Grass04
24 Grass05
25 Grass06
26 Grass07
27 Grass08

30 Stone01
31 Stone02
32 Stone03
33 Stone04
34 Stone05

40 StoneStatue01
41 StoneStatue02
42 StoneStatue03
43 SteelStatue01
44 Tomb01
45 Tomb02
46 Tomb03

50 FireLight01
51 FireLight02
52 BonFire01

55 DoungeonGate01
56 MerchantAnimal01
57 MerchantAnimal02
58 TreasureDrum01
59 TreasureChest01
60 Shop01

65 SteelWall01
66 SteelWall02
67 SteelWall03
68 SteelDoor01
69 StoneWall01
70 StoneWall02
71 StoneWall03
72 StoneWall04
73 StoneWall05
74 StoneWall06
75 StoneMuWall01
76 StoneMuWall02
77 StoneMuWall03
78 StoneMuWall04

80 Bridge01
81 Fence01
82 Fence02
83 Fence03
84 Fence04
85 BridgeStone01

90 StreetLight01
91 Cannon01
92 Cannon02
93 Cannon03

95 Curtain01
96 Sign01
97 Sign02
98 Carriage01
99 Carriage02
100 Carriage03
101 Carriage04
102 Straw01
103 Straw02
104
105 Waterspout01
106 Well01
107 Well02
108 Well03
109 Well04
110 Hanging01
111 Stair01

115 House01
116 House02
117 House03
118 House04
119 House05
120 Tent01
121 HouseWall01
122 HouseWall02
123 HouseWall03
124 HouseWall04
125 HouseWall05
126 HouseWall06
127 HouseEtc01
128 HouseEtc02
129 HouseEtc03
130 Light01
131 Light02
132 Light03
133 PoseBox01

140 Forniture01
141 Forniture02
142 Forniture03
143 Forniture04
144 Forniture05
145 Forniture06
146 Forniture07

150 Candle01
151 Beer01
152 Beer02
153 Beer03

How the above reference works is that each object name is the name of another .bmd file that corresponds with the object ID .bmd file. The difference however, is in the actual game the true object ID is one less than what is in this list. For accuracy reasons I left the list intact, but make an important note now: each object name corresponds with the object ID after it. For example, Object78.bmd actually looks at StoneMuWall03, not StoneMuWall04 as per the list.

Now that we have the file set-up, go ahead and note down any objects you want to bring over into Lorencia. View the default Lorencia map in the world editor if you want or need to see which object you'll be replacing in the map. Once you've picked, note that ObjectID in the column we've made. If you keep the highlighted note above in mind it should be easy enough to follow.

To prepare for the next step, make a folder called NewObjects and copy all the new objects from your chosen map into it.

Part 3: Pentium Tools

Open up Pentium Tools, and click the Graphic Files -> 3D BMD - SMD Preview and Convert function and navigate to the NewObjects folder. Single-click on each one and note the Event Log in the background, telling us which textures are missing. This is because the textures need to be in the same directory, and by separating them here we've found an easy way to know which textures we need. Copy the textures listed for each object from their main folder into NewObjects, and single-click each again to make sure you have all of them. When that's done, copy all the new objects and their textures into Lorencia's main object folder (Object1).

Part 4: Renaming the files, testing replacement

Using the document we've made with the object IDs of the objects we copied over and the ones we'll replace in Lorencia, we need to start renaming both the object file and its reference file. So, where Object78 is referring to StoneMuWall03 and we're using Object22 from a new map, we need to make a copy of Object22, name one to Object78, and name the other to StoneMuWall03.

To test if it has worked, load up Lorencia in the world editor and click on the object you've replaced and ctrl+click it into the map (this can take a few clicks most times). If the object appeared as it should with the proper texture, hooray, the largest part of replacing Lorencia is complete!

Part 5: Making the map .att work correctly

This is another part of hard-coded annoyance we need to bypass. Because spawn locations are coded into the GS and it checks if you spawn in a safe zone that you can walk in, not only can the spawn area in your new map not change, but you must have a safe area there. So if you were replacing Lorencia with Arkania like I am, well, now we need to make an Outpost or something out there. Additionally, there seems to be some data in the .att that gets lost if you use the default new map's .att file, at least in the case of Arkania, which I believe is a third-party custom map, so maybe if you're using a Webzen map .att it might work... try it out, if the client crashes, continue reading below.

Recreating the .att is a pain in the a--, but a tonne easier thanks to the program I linked at the start called Vitrite. This lets us hold Ctrl+Shift+anynumber to change the opacity of the active window. With this, we can open up the Lorencia .att we need to reshape, the new .att that shows us how, and fade the Lorencia .att on top by whatever value you want so you can sculpt it 100% accurately. When that's done, save the Lorencia .att file, and also save a copy for the server called Lorencia.att and place it into server\data\textures.

For a final test, load up the world editor and open Lorencia to make sure everything appears normal. Any white objects are missing textures. I know with some maps the objects they reference are in another folder for some reason, so a general search in the client folder should turn them up, then just paste them into the main Object1 folder.

If that all looks good, fire up your server and client and explore your new (except for the default spawn outpost area :*:) Lorencia!

PS: I will make a video to accompany this post when it isn't 11:30pm, ;).
 
Last edited:
Back
Top