There really isn't ALOT missing anymore. The things missing are being worked on like you said, and the time isn't going to be 2 years from now, the time is now. Look at otland. It is being shown on all the boards, the movement is happening right now!
> do [TFS 1.1] in title while posting a scriptThat is the only possible reason I can think of that could possibly cause you to want OTHER PEOPLE to use TFS 1.X.
Why is it 0.Noob?
If you were playing on one of my servers, using the OTClient. You wouldn't be able to tell the difference between me using 0."NOOB" or 1.X.
For what I do, which is making custom servers. TFS 1.X offers nothing.
You really want people to start using 1.X? Well then offer something fucking new and exciting. If 1.X is so god damn amazing, then why does every single server running 1.X play exactly like every server that is running on TFS 0.X?
I'll tell you why, because they have the same exact functionality. The only thing TFS 1.X offers is greater optimization. Which hey, that is a great thing, and in a couple of years TFS 1.X might become the next best thing. But right now, it's missing ALOT, and people are working on it, there are commits happening all the time.
Why does it matter what version of TFS other people use?
Can you at least tell me why anyone cares? Do you just get annoyed when helping people on the request board when they are using 0.X instead of 1.X?
That is the only possible reason I can think of that could possibly cause you to want OTHER PEOPLE to use TFS 1.X.
what do u mean? xDThe one thing what is holdin TFS 1.x back is .XML files.
If they can remove these, then i think its new best thing.
currently we have .xml for everything (spells, monsters, creaturescripts, npc, etc)
Its nice and all, but they kinda limited, i always have add extra things to actual script.
I would like 1 file, where you register script and doesn't matter what function it uses. Just register it.. or unregister it with .
Example:
Name: Script:
"MonsterName" -script-
"SpellName" -script-
"fancyfunction" -script-
U see what i mean?
Right now XML's are limited config files, you can only use what its given to them by source.
But then we could do the Configs inside the script and Somewhere globalSpells/globalMonsters, it executes all the functions given from config.
Right now i have like doubleStandard or in some cases i use talkaction for spells.
Umm we still have open source here so ppl with no knowledge could copy+paste a new spell attribute to their globalSpells.luaOh!! I can explain this.
When TFS was originally built, someone had the idea to build it so people that have NO PROGRAMMING EXPERIENCE AT ALL could make servers.
So they said to themselves, "Why don't we add some basic spell functionality into spells.xml, so you don't have to script everything into the spell."
What I think you are basically saying is, "Why don't we remove all that functionality and just do that ourselves in the spells .lua file?
Guess what, you can do both, I don't see any reason to remove functionality, and make it even harder for new people to start making servers. What we should be doing is adding in MORE options into the spells.xml, so people can make even better servers with no programming knowledge.
You can basicly do both get rid of xml and enhance functionality by a lot with getting rid of it and instead have the config inside the lua file already.Oh!! I can explain this.
When TFS was originally built, someone had the idea to build it so people that have NO PROGRAMMING EXPERIENCE AT ALL could make servers.
So they said to themselves, "Why don't we add some basic spell functionality into spells.xml, so you don't have to script everything into the spell."
What I think you are basically saying is, "Why don't we remove all that functionality and just do that ourselves in the spells .lua file?
Guess what, you can do both, I don't see any reason to remove functionality, and make it even harder for new people to start making servers. What we should be doing is adding in MORE options into the spells.xml, so people can make even better servers with no programming knowledge.
register("action","pick") -- action = function type, pick = the table variable and the function it uses for the config.
action.pick =
{
itemid = 2553, -- or {from = 2553, to 2556} or {2553,7219,8822}
-- actionid = 10000 this would be optional
-- uniqueid = 10000 this would be optional
enabled = true -- so we can disable or enable this action directly while the server is running without restarting the server or reloading actions w/e
}
function pick(cid, item, fromPosition, itemEx, toPosition)
if (itemEx.uid <= 65535 or itemEx.actionid > 0) and (itemEx.itemid == 354 or itemEx.itemid == 355) then
local iEx = Item(itemEx.uid)
iEx:transform(392)
iEx:decay()
toPosition:sendMagicEffect(CONST_ME_POFF)
return true
end
return false
end
this.You can basicly do both get rid of xml and enhance functionality by a lot with getting rid of it and instead have the config inside the lua file already.
quick example: an onUse function
This is how I handle my lua files at my own distro, I don't make use of xml anymore, I just parse all files in the certain folders and I don't need to register them somewhere extra in a xml file or w/e, making it a lot more convenient for me.Code:register("action","pick") -- action = function type, pick = the table variable and the function it uses for the config. action.pick = { itemid = 2553, -- or {from = 2553, to 2556} or {2553,7219,8822} -- actionid = 10000 this would be optional -- uniqueid = 10000 this would be optional enabled = true -- so we can disable or enable this action directly while the server is running without restarting the server or reloading actions w/e } function pick(cid, item, fromPosition, itemEx, toPosition) if (itemEx.uid <= 65535 or itemEx.actionid > 0) and (itemEx.itemid == 354 or itemEx.itemid == 355) then local iEx = Item(itemEx.uid) iEx:transform(392) iEx:decay() toPosition:sendMagicEffect(CONST_ME_POFF) return true end return false end
The strong fact is, I can access the config from every other lua file in my server and I can even change the config on the fly while running the server with just a few ingame commands without the need to reload actions or w/e.
currently we have .xml for everything (spells, monsters, creaturescripts, npc, etc)
Its nice and all, but they kinda limited, i always have add extra things to actual script.
I would like 1 file, where you register script and doesn't matter what function it uses. Just register it.. or unregister it with .
Example:
Name: Script:
"MonsterName" -script-
"SpellName" -script-
"fancyfunction" -script-
U see what i mean?
Right now XML's are limited config files, you can only use what its given to them by source.
But then we could do the Configs inside the script and Somewhere globalSpells/globalMonsters, it executes all the functions given from config.
Right now i have like doubleStandard or in some cases i use talkaction for spells.
too much text, did not read.
(-2.5, -50, -3.5, -100)
(á, Θ, ƒ, φ)
@Evil Hero @whitevo
It is like no one here remembers when they first started working on OTServers.
You'd open up an XML file called "Spells" and see a list of spells.
You'd see all the config values, for manacost, exhaust, words, name, soulcost, blocksolid, etc.
And that was your first experiement, You could make things have smaller cooldowns, more manacost, etc, and see all the available spells easily displayed to you on one screen, and manage it easily. Sure it doesn't provide the best functionality, you can't make spells cost health, or change the damage, or anything like that, but that was the first step.
Then you would find Vocations.xml and start making custom vocations and messing around with all of those .xml values, giving people faster soul, health and mana, giving players fast starting baseSpeed, making 2nd promotions. Those were a big thing for a while.
Then you'd think "Hmm, I would like to make a new spell, instead of editing existing ones". So you'd open up like Energy Strike.lua, and it mine as well have been written in Ancient Hebrew.
You have no idea how to change the damage, you see the formula thing:
It mine as well have been:Code:(-2.5, -50, -3.5, -100)
Code:(á, Θ, ƒ, φ)
So you'd go to the forums and try to get someone to explain how to change damage... or how the formula works...
AND BASICALLY NO ONE KNEW, they knew kind of a little that bigger negatives is higher damage, and positives is healing, thats it.
Then you'd ask how to change the spell animation, and they'd say the animations are in the constant.lua. So you'd go there and make a rock throwing spell or something newbish. And that's it.
Come on people, act like you've been there before. Do we really want to make it so no one new can ever start making servers again by just adding complexity until its a language only we know?
Wut?@Evil Hero @whitevo
It is like no one here remembers when they first started working on OTServers.
You'd open up an XML file called "Spells" and see a list of spells.
You'd see all the config values, for manacost, exhaust, words, name, soulcost, blocksolid, etc.
And that was your first experiement, You could make things have smaller cooldowns, more manacost, etc, and see all the available spells easily displayed to you on one screen, and manage it easily. Sure it doesn't provide the best functionality, you can't make spells cost health, or change the damage, or anything like that, but that was the first step.
Then you would find Vocations.xml and start making custom vocations and messing around with all of those .xml values, giving people faster soul, health and mana, giving players fast starting baseSpeed, making 2nd promotions. Those were a big thing for a while.
Then you'd think "Hmm, I would like to make a new spell, instead of editing existing ones". So you'd open up like Energy Strike.lua, and it mine as well have been written in Ancient Hebrew.
You have no idea how to change the damage, you see the formula thing:
It mine as well have been:Code:(-2.5, -50, -3.5, -100)
Code:(á, Θ, ƒ, φ)
So you'd go to the forums and try to get someone to explain how to change damage... or how the formula works...
AND BASICALLY NO ONE KNEW, they knew kind of a little that bigger negatives is higher damage, and positives is healing, thats it.
Then you'd ask how to change the spell animation, and they'd say the animations are in the constant.lua. So you'd go there and make a rock throwing spell or something newbish. And that's it.
Come on people, act like you've been there before. Do we really want to make it so no one new can ever start making servers again by just adding complexity until its a language only we know?
Wut?
My first experince with spells: Was kinda the same, but for long time i still didnt understand how the heck does exhaust do and groupExhaust. What was the ID for? deleted it. Months later i found out i can add few more things never had in the example pool of spells.
Some spells didn't have scripts attached to them and was directly directed to source code function. Confuse me more! how i change this spell? (you could not do that without source code edit)
Now picture yourself in the new era. You open up spells folder there is: globalSpells.lua and 1 folder named "spells"
You open up globalSpells.lua and see like 10 functions what are written with loops and written like japanese "function manaCost(片仮名, カタカナ)"
But you clearly see manaCost is written there, so you assume it has something to do with mana.
Then there are Commented text --"this function will reduce the mana when you cast a spell, and if you don't have enough mana, you can't cast a spell"
You close this globalSpells.lua and open up first example spell: Energy strike
It has a table on top what is SO EASY TO CONFIG:
EnergyStrike ={
mana = 10
cooldown = 2
level = 1
Formula = "EnergyStrike" --you can find the damage formula in globalSpells.lua
Flying effect = 1 --you can see the number codes online and what pictures they make
onHit effect = 2
onCast effect = 3
}
function onCastSpell(something, something)
Now Question from me to you is.
If you see this table, How long it takes you to figure out how to change mana cost and spell effect on hit?
When you want to change spell Damge, what is the first thing you are going to do?
No no no no, this topic is about development; not playability. I could make a server completely unrelated to any TFS and there still wouldn't be a difference.
Ah, now you're back to the development. I'm still appalled by your stance on "1.X offers nothing for custom servers", I've been making them perfectly fine. Even the most customized server ever in history, can be done in 1.X. You still have yet to tell me what can't be done. This is your most ridiculous statement of the entire thread. I cannot make any more straight-forward response to this.
Yes, I (read that, I said 'I', not 'everyone', I do not speak for everyone) personally want people to start using 1.X, ESPECIALLY the newcomers. It's important for them to realize that 1.X is the official version that is consistently being updated. As for new ideas in 1.X, they come all the time, I've released a couple stuff, I personally have a couple of stuff on my computer that I just haven't shown, @Printer has been doing some stuff as well, I'm sure many other people have done some cool stuff. What exactly do you want to see? We also have @zbizu who is releasing large amounts of scripts to work in 1.X that are favorites for 0.Noob.
well then it simply comes down to individual preference. These tables can be easily converted into 1 file too what will look alike .xml file, but more flexible.Honestly, I would always keep all config for all spells in one file no matter what, whether its creating a table in LUA or using XML.
There is no substitute for being able to see all the spells of your server on one screen, compare their exhausts, manacosts, etc to each other.
If it was up to me, I would be taking damage and putting it into the spells.xml too. (or into an lua table)
Sure, if you opened one spell and saw the config, you'd probably guess that all other spells had configs too, but just the amount of time it would take to make changes to all spells would be horrendous. And you couldn't easily see if you missed a spell, etc.
No no no no, this topic is about development; not playability. I could make a server completely unrelated to any TFS and there still wouldn't be a difference.
Ah, now you're back to the development. I'm still appalled by your stance on "1.X offers nothing for custom servers", I've been making them perfectly fine. Even the most customized server ever in history, can be done in 1.X. You still have yet to tell me what can't be done. This is your most ridiculous statement of the entire thread. I cannot make any more straight-forward response to this.
Yes, I (read that, I said 'I', not 'everyone', I do not speak for everyone) personally want people to start using 1.X, ESPECIALLY the newcomers. It's important for them to realize that 1.X is the official version that is consistently being updated. As for new ideas in 1.X, they come all the time, I've released a couple stuff, I personally have a couple of stuff on my computer that I just haven't shown, @Printer has been doing some stuff as well, I'm sure many other people have done some cool stuff. What exactly do you want to see? We also have @zbizu who is releasing large amounts of scripts to work in 1.X that are favorites for 0.Noob.