• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

How to make your server client 8.61 Tutorial

Edit*
Code:
	<client version="8.54">
		<data dat="0x4C2C7993" spr="0x4C220594"/>
	</client>
in
X:\Users\"username"\AppData\Roaming\Remere's Map Editor\clients.xml

Edit...
hm... it's not working... you must wait on rme 2.0 ver
 
Last edited:
I'm work on it... "doTransformItem" function maybe need fix
 
It's not easy, I try fix potions.lua but i dont understand function: "doAddContainerItem(uid, itemid[, count/subtype])"
how i can to find "potion container" uid? (to add empty potion flask)
 
Maybe re-write "ScriptEnviroment::streamThing" and push Parent ID there, so then:
Code:
doAddContainerItem(item.parent, EMPTY_VIAL)
 
runes is not worked =/

2 SD + 2 SD = 100 SD (oO)

items.xml

Code:
...
	<item id="2261"  name="destroy field rune">
		<attribute key="runeSpellName" value="adito grav" />
		<attribute key="weight" value="120" />
remove >	[COLOR="Red"]<attribute key="charges" value="1" />[/COLOR]
	</item>
...
fix all runes...

edit... argh... not working...;/
 
Last edited:
items.xml

Code:
...
	<item id="2261"  name="destroy field rune">
		<attribute key="runeSpellName" value="adito grav" />
		<attribute key="weight" value="120" />
remove >	[COLOR="Red"]<attribute key="charges" value="1" />[/COLOR]
	</item>
...
fix all runes...

Yes, but they remove after 1 use no matter how many charges they have.
 

Attachments

Last edited:
Maybe re-write "ScriptEnviroment::streamThing" and push Parent ID there, so then:
Code:
doAddContainerItem(item.parent, EMPTY_VIAL)


[15:40:47.200] [Error - Action Interface]
[15:40:47.201] data/actions/scripts/liquids/potions.lua:eek:nUs
[15:40:47.202] Description:
[15:40:47.202] (luaDoAddContainerItem) Container not found

Yes, but they remove after 1 use no matter how many charges they have.

It's not working... i know... ;/
 
Last edited:
Changelog:
Bugs:
#When player stop attack any creature... || FIXED!!!
#When player start attack npc or player... || 99% NEED FIX
#When player see any items (i know, it is potion) || FIXED!!!
#Bug with rune charges || FIXED!!!
Fun:
#Potions || 99% NEED FIX
#Sort items (like rl tibia) || NEED FIX
#Add items and atributes to items.xml || NEED FIX
#Add new monsters... || NEED FIX
#Add one new magic effect || DONE!!!
#Add new outfit || DONE!!
More ?
 
Last edited:
I cant figure out why my map isnt loading, Im running trunk 3671 added in the fixes you specified, edited it so it would compile, put in the items.otb (in items folder, and in RME) resaved my map and even edited the clients.xml like you said it my map still wont load, i dont get it
 
No, it no working...
I have this:
Code:
if(fromPosition.x == CONTAINER_POSITION)then    
//not working                          
     -- doAddContainerItem(item.parent, potion.empty ,1) --fix me!!!
        doRemoveItem(item.uid, 1)            
else    
//it works V    
        doCreateItem(potion.empty, 1, getThingPos(item.uid))    
        doRemoveItem(item.uid, 1)            
end
//(luaDoAddContainerItem) Container not found

item.parent return player position so vial is created under player;/

If enybody can help, please help ;)

I can't find anything about function like "return item container" ;/
 
gimmie 30 mins to get caught up in the fixxes then ill help, i fixxed my map prob (really wierd) had to change
mapName = "map"
to
mapName = "map.otbm"
dont really understand why

and now im getting this..
[14:27:57.344] > ERROR: Unknown world type: pvp

EDIT: Nm, got that fixxed, ill see what i can do to help with the potions thing if you can post what you have so far
 
Last edited:
Whats the fix for the runes? When using a stack it treats it as a single rune (cause it considers it < 1 charge instead of <1 count i assume)

Nevermind, fixxed it

In spells.cpp go to
Code:
bool RuneSpell::executeUse(Player* player, Item* item, const PositionEx& posFrom,

and replace:
Code:
g_game.transformItem(item, item->getID(), std::max((int32_t)0, ((int32_t)item->getCharges()) - 1));

with this:

Code:
g_game.transformItem(item, item->getID(), std::max((int32_t)0, ((int32_t)item->getItemCount()) - 1));
 
Whats the fix for the runes? When using a stack it treats it as a single rune (cause it considers it < 1 charge instead of <1 count i assume)

Nevermind, fixxed it

In spells.cpp go to
Code:
bool RuneSpell::executeUse(Player* player, Item* item, const PositionEx& posFrom,

and replace:
Code:
g_game.transformItem(item, item->getID(), std::max((int32_t)0, ((int32_t)item->getCharges()) - 1));

with this:

Code:
g_game.transformItem(item, item->getID(), std::max((int32_t)0, ((int32_t)item->getItemCount()) - 1));
Code:
	<item id="2261"  name="destroy field rune">
		<attribute key="runeSpellName" value="adito grav" />
		<attribute key="weight" value="120" />
 [B]delete-> [/B] [COLOR="Red"]<attribute key="charges" value="1" />[/COLOR]
	</item>
 
Already did that :)
My sources however were trying to remove charges rather then counts :)
Thats what the was intended to fix. Btw, what do you think is the best way to do this?
I could add a new function like "getContainerUid(uid)" to figure out what container the item is in, and just do
Code:
container = getContainerUid(item.uid)
doRemoveItem(item.uid, 1)
doPlayerAddItem(potion.empty, 1)

OR, add another count value to the transform function
e.g.
doTransformItem(item.uid, 1, potion.empty, 1)
 
Back
Top