-
Content Count
518 -
Joined
-
Days Won
68
Everything posted by Angelix
-
The thing is, I though of doing something similar. Putting people on a variable table and keep sending them as soon as it reaches 10 people. The problem I though (never tested or proved), what happens if a player registers and suddenly disconnects? The player's data is stored and it will count as 1 of the 10 players that will be sent, but the player isn't online anymore. I didn't know how to deal with that, that's why I though of trying to use a whole party (5 players) as a requisite to register, the same logic used from the creator of the instanced "Lone Tower".
-
A bit off-topic. I still have to scripts! Back then when I made it I didn't know how to work with map copies and was a one-instance player-triggered PK event. I initially made to work with 10 players per round. It's a script based on a mode from S4 League, can't remember which one. It was working fine when you actually get all players to register and start the event at the same time. I was using a variable to store player's role to send them, that was the bugged part. Now that I know how map copies work, I need to adjust the script to work with map copies and see how I can fix the player registering process (maybe limiting it to five per instance).
-
I haven't tried, but possibly moving a player from one copy to another still counts as a move, which essentially revives them. If you want me to script something, give me good details.
-
[Request] Countdown 20s auto revive in town
Angelix replied to darklesson's topic in Questions & Help
In response to @KONG, maybe try this. I've never used this function before, so I don't know how it works. If it works just like that by placing map copy and function name, then use it and then the following function. DealAllPlayerInMap(map_copy, "AutoMapRevive") If it does work, you can use it and then just place this function: function AutoMapRevive(Player) local MapReviveTimer = 20 if MapRevive == nil then MapRevive = {} end if MapRevive[GetRoleID(Player)] == nil or IsChaLiving(Player) == 1 then MapRevive[GetRoleID(Player)] = MapReviveTimer end if IsChaLiving(Player) ~= 1 then if MapRevive[GetRoleID(Player)] == 0 then MoveCity(Player, "") MapRevive[GetRoleID(Player)] = MapReviveTimer else SystemNotice(Player, "You're being revived in "..MapRevive[GetRoleID(Player)].." second(s).") MapRevive[GetRoleID(Player)] = MapRevive[GetRoleID(Player)] - 1 end end end If you don't get how to first function works, then try the following method by placing it inside the "map_copy_run_" function of your map. local Alive = GetMapActivePlayer(MapCopy) BeginGetMapCopyPlayerCha(MapCopy) for a = 0, (Alive - 1), 1 do local Player = GetMapCopyNextPlayerCha(MapCopy) if (Player ~= 0 or Player ~= nil) then AutoMapRevive(Player) end end -
I think clerics can't revive them as they aren't determined "friendly", regardless if they are in same party/guild. That's if the person has setup the correct type of map. This should work, haven't been tested. --[[ DealAllPlayerInMap(map_copy, "AutoMapRevive") ]] function AutoMapRevive(Player) local MapReviveTimer = 20 if MapRevive == nil then MapRevive = {} end if MapRevive[GetRoleID(Player)] == nil or IsChaLiving(Player) == 1 then MapRevive[GetRoleID(Player)] = MapReviveTimer end if IsChaLiving(Player) ~= 1 then if MapRevive[GetRoleID(Player)] == 0 then MoveCity(Player, "") MapRevive[GetRoleID(Player)] = MapReviveTimer else SystemNotice(Player, "You're being revived in "..MapRevive[GetRoleID(Player)].." second(s).") MapRevive[GetRoleID(Player)] = MapRevive[GetRoleID(Player)] - 1 end end end
-
No worries, I managed to get it working, not as I thought, but I can alter correctly level, HP, dodge, defense, hit rate, attack. Movement and attack speed are a bit off, but it manages to work around a certain arrangement. And yes, their base stats may be an influence, I created a new character set everything to 1.
-
Did something show up on console or lua_err.txt?
-
It's not new, on a version of ServerDev, someone created a reset system (a few years ago) that placed you back into newbie class, level 1 and may additionally grant a few stat/skill points. Its the same mechanics from ToP's rebirth system, just a bit further with making player level 1 and a newbie. It was first created as an extension of pkoSite and later turned into an NPC script. Can't seem to find the script within resources at the moment. EDIT: Actually, looking through the resources from MEGA, there is a script like that, kinda messy, but it does the same thing.
-
Can you expand on that "Reset/Rebirth" system?
-
I wonder why you keep getting banned...
-
Can't understand Russian. Either way, check console or lua_err.txt, they'll give you some leads onto where the problems is. You can share them here and i'll try to help.
-
Yes, I kept telling him that the error lines he gave us/me were all pointing either to commented lines or "end". Then he just told me he had place a variable's name twice somewhere else which caused an undefined variable and that he fixed it.
-
Problem seems to be fixed already. @Vasil said he had place a variable's name twice which caused an undefined variable. Not sure if that's true though.
-
Are you completely using cloak? Might as well remove that for the time being till you know how to modify scripts and add it without problems.
-
You didn't because this: Doesn't appear in the function. Something similar is in it, yet it is missing the "[ i ]"
-
My bad, typo. I meant the whole function where the line with error belongs to.
-
Mind posting the whole function from where you got this?
-
As @Shako said, mind sharing an image of console and lua_err.txt ?
-
Yes, so far I'm able to properly get a character's attributes correct, the thing is, when trying to applying them to a monster, things go slightly wrong. I created a replica of an Abyss Lord and set its attributes to 0 or 1 on some cases via CharacterInfo.txt. So if I do this: Value = GetChaAttr(Player, ATTR_MNATK) And then do this: SetCharaAttr(Value, Monster, ATTR_MNATK) The monster's MNATK will not go accordingly to the value, yet if I do this: SetCharaAttr(Value, Monster, ATTR_STATEV_MNATK) It seem that it does reflect in-game the according attribute and deal a considerably amount of damage. With "ATTR_MNATK" it dealt damage from 1 ~ 10 on a 2k defense while with "ATTR_STATEV_MNATK" it deals around 200 damage on same defense. EDIT: So far I have the basic attributes down, still having some problems copying ASPD and MSPD though.
-
How can I get a player's attribute (MNATK/MNATK, DEF, FLEE, HIT, ASPD, MSPD & PDEF) and give them to a monster? I'm trying to create a copy (attribute-wise) of a player (or average of players) and summon it. First I'd have to get attributes of players and average, summon monster (CreateCha) and set the stats. How can I set the stats correctly? Thanks for any information given.
-
What kind of software? Never used one before. I merely do trial and error thing by thing, I rarely modify a bunch of code without testing, today I did and something went wrong, haha.
-
Thanks! You save me hours of scripting again, haha. Apparently, while trying to remove useless scripts and add a custom feature, I accidentally deleted "GetExp_PKM(dead, atk)" and I didn't notice, haha. Thanks again!
-
What functions interfere with the process of giving EXP when killing a monster? I did many modifications and can't backtrack quite right. The thing is, I'm not receiving any EXP, no errors show up on console nor lua_err.txt. Any clues? Thanks!
-
What's the difference between those files and the current v1.x and v2.x ?
-
This is done by assigning an area to your map and then assign a sound to that area within AreaSet if I remember correctly.