![]() |
New shard project - Printable Version +- SphereCommunity (https://forum.spherecommunity.net) +-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d) +--- Forum: General Help (/Forum-General-Help) +--- Thread: New shard project (/Thread-New-shard-project) Pages: 1 2 |
New shard project - Endre - 03-01-2016 06:28 AM Hello everyone, first of all I wish to thank you everybody for the magnificent improvement made on sphere since I last used it (I think it was about six-seven years ago...) After some time I decided to start over again in creating a new shard, first of all to play Uo offline (it's a great game and I liked it very much ) and, if it works as I like, opening it as a live shard :-) It sounds very ambitious, and I'm not so good at scripting, so I hope not to bother you all so much with questions... thank you in advanced!! Well to get the things started, I have some points I haven't understood well in the wikis: 1 I wish to add another map plane, or facet, to the game. Can I do it simply adding a mapX=x,y,sec_dim,mul in sphere.ini and then creating the conrespondant sphere_mapX.scp file? 2 I wish to add some new skills to the existing ones (e.g. farming or breeding ). Is it possible? How can I set the skillgains inside the skill behavior? 3 I haven't understood well how skillclass works. How can I set a skillclass on a character? Thank you again for any comments and suggestions, I will put any working script developed in the submission section. RE: New shard project - Khaos - 03-01-2016 12:45 PM 1. http://forum.spherecommunity.net/Thread-Tutorial-Adding-virtual-map-planes 2. [SKILL 60]: Enter in new skill information and trigger processing. You can write your new calculations here as well. This can then be called via scripted usage checking this skill. 3. .set SkillClass <defname>. Can also be done via a tile or gate, or however. ![]() RE: New shard project - Endre - 03-01-2016 10:45 PM Thank you very much, khaos! I will put myself at work on this project! However there is a point I don't understand well: in the skill description there are some points where skill is involved, as in effect, duration and advance rate. Here you can specify a linear progression but the coefficients are capped at 100 skill points. E.g. EFFECT=3,10 specifies the value of effect at 0 skill points (3) with a linear progression until 100 skill points (10). Is there any way to specify other values for skill higher than 100? RE: New shard project - Khaos - 03-02-2016 12:11 AM All of mine are soft coded Endre in triggers. I personally run DR calculation based on what they are doing and the difficulty of the task. In mine, if you are say 80.0 skill points and fighting an Orc or making a hammer, you would probably only see a skill point gain ever 10,000 or so uses. Now if they were crafting something near their skill level or fighting something more difficult (Balron for example) the rate of gain in my system is significantly increased. ![]() You are very welcome though ![]() RE: New shard project - Endre - 03-02-2016 08:41 PM Again, thank you khaos! As you answer also foresaw my next question. In fact I was about to ask if the best solution was to entirely script those skills instead of intercepting their environment with triggers (as you suggest). I read in another thread that scripted skills are more CPU and memory consuming than hardcoded ones: resources at payment for versatility. One more suggestion, in your opinion, which is better as a skill progression system: a probabilistic one (at x skill executing an action has a % chance of skill gain) or a deterministic one (at x skill you have to perform an action n times to have a skill gain)? For me the second one is more realistic; however the progression needs to be stored so me where... in a tag, perhaps... RE: New shard project - karma - 03-03-2016 01:33 AM I would suggest you too to use the more hardcode you can, so to change their behaviour with triggers. I use a random skillgain system, as you said this requires less informations to store. Inviato dal mio LG-D855 utilizzando Tapatalk RE: New shard project - Endre - 03-03-2016 08:52 AM Yes, karma, but random skillgain is less realistic when it comes to crafting skills, where experience is tightly bond with repeating the same action ;-) However I agree with you in using hardcoded skill environment, I was looking for a list of the typedefs and how they call skills, I found the list in the wikis but it seems not complete :-/ RE: New shard project - karma - 03-05-2016 06:59 PM Well, if you want to use an incremental system you can store into a sqlite database the times you have performed each skill for each player, which is more tidy and probably faster than using a tag ![]() RE: New shard project - Endre - 03-06-2016 11:40 PM Wait wait wait a second... are you telling me that storing values in an external database is faster and less resource consuming than using tags on a character?? I always thought the exact opposite, can you please explain? I've never used external databases in sphere... thanks in advance!! :-) RE: New shard project - karma - 03-07-2016 12:52 AM If you are planning to have a huge amount of tags on a char then yes, for two main reasons: 1) Compiled C++ (so sphere hardcode and SQL libraries) is faster than spherescript, since it's parsed line by line, it's not compiled; 2) When accessing to a TAG, i think sphere loops through all the tags until it finds the one with the name you need. You can use either SQLite or MySQL. I would look for SQLite, since sphere has an internal support for this, meaning that you don't have to install anything and you can store the database as a file where you want. Have a look at the sphere_add_sqlite.scp script in the base script pack, this script populates a db from all item/chardefs and then uses it to show a custom ".add" dialog ![]() |