Jump to content

Vanilla

Developer
  • Posts

    471
  • Joined

  • Last visited

  • Days Won

    58
  • Feedback

    0%

Everything posted by Vanilla

  1. Guys.. I can't do the client part for you too The game is made to handle 4 inventory pages but of course you need to make some client stuff too! If you don't have this stuff done, it's impossible to use the new slots and you'll have bugs. With the id confusion: Yep, maybe you're right, there's already a function for that, but my new function is faster and smaller. It's made to create less server load than the old one. I'm gonna merge the two functions in the next version and just make one out of it. And yes, they're also in the other rev's but I'm gonna improve them, not making new ones ouf of them (see the pc.get_account_id() which I improved and not made a new one). Same will go to the other functions. My main goal is to make them smaller and faster so you can use them more often without creating queries or stuff. tl;dr: You need to adapt your client if you're using 4 inventory pages! Otherwise don't enable the feature! The new created function will replace the old function, it's there for testing purpose and if it's working, it'll be merged into the old function. I just wanted to have the old one if the new function makes any problems. If you want the client stuff: [Hidden Content]
  2. New edits on changelog and version 2.4 released!!! ### Changelog vanilla revision 54180 ### Also known as version 2.4 * stands for changes + stands for additional content or features - stands for removed things -> general <- * changed compiler to gcc 4.9 released version * changed some optimization flags to make it even more faster! * upgraded boost to version 1.55 * upgraded cryptopp to 5.6.2 + added qc in the bundle! Further versions will now also update qc file! -> qc changes <- * changed compiler to gcc49 and added some tuning in the compiler flags! Now qc will be faster and smaller than before! -> liblua <- Note: Upgrade to lua 5.2 is now shifted away into a future versions since there's still a lot to do. * Recompiled with gcc 4.9 * Made some slight changes to make the lualib more compatible to newer versions -> gameplay improvements <- + Installed advanced spam protection to stop people saying the same stuff over and over. It can be activated * game master will now have the same waiting time when switching bonuses than users * unknown packet headers won't let the user disconnect; instead the packet will just be dropped and ignored. Still pending test! This should lead into a more stable behavior + New skill flags implemented: By now the new skill flags will still do magic damage but they won't be affected by POINT_RESIST_MAGIC, instead they'll have their own defense bonus like RESIST_DARK to counter them. You CAN use them, but you're not force to use the new skill flags. Still further testing needed. -> bugfixes <- * fixed immunity bug * fixed some bugs with CONFIG options that couldn't be recognize nor work properly * fixed a bug where people could cause a yang overflow with shops * fixed a bug where sometimes the anti-overflow-mechanism leads people into starting with maximum gold * Fixed the prisma glass system - removed polymorph bonus since it's just buggy and won't work for most char classes -> CONFIG options <- + The following CONFIG-options were added: empire_chat: 1/0 Enables the global chat! Disabled by default. bigger_inventory: 1/0 Allows the use of up to 4 inventory slots Be careful with this options as you'll have to edit your client too! If you don't have 4 pages in your client installed, then don't activate this feature! trade_effect: 1/0 Enables a effect that'll occur when people are traing stuff. Enabled by default. ban_force_reason: 1/0 This lets the ban-command only work when you're giving a reason. Disabled by default. start_gold: long int Let's players start with a custom amount of gold. Default: 0. view_equip_for_all: 1/0 Let's player view equip of others! Disabled by default. view_equip_sp_cost: int Sets the cost of using view_equip. This is in % so if you type in 30 then it'll cost 30% of the players maximum sp. Default: 0. glass_enable: 1/0 Enables the prisma glass-system to print your items in the chat. Disabled by default. glass_needed: 1/0 Sets if you need a glass for using the prisma glass-system or not. Enabled by default. trade_effect_exchange_threshold: int Sets the threshold to create another effect when making an exchange. Default: 500000. This means, that every 500000 gold traded away there'll be another fly effect created trade_effect_shop_threshold: int Same as trade_effect_exchange_threshold; This points to buying items in shops. Default: 100000000. -> Quest functions <- + pc.block_exp() + pc.unblock_exp() They may be quite popular right now. This lets the player not receive any exp anymore. The unblock function removes this effect. It's for a working anti-exp ring. + item.equip() Equips the selected item + npc.select() Selects a new npc as the current quest npc. Similar to the pc.select-function + pc.get_id() Prints out the id from the player * pc.get_account_id() Now works with a new table entry from the player-table so it won't query nor use anything else. It'll be faster than before! -> commands <- * ban command reworked. Now works properly and bans the given player. But additionally, this command is also able to read a reason given. /ban PLAYERNAME [REASON] + unban Unbans a player and reverts the ban effects. /unban PLAYERNAME Release: [Hidden Content] password: vanilla note! Please always test newer versions of vanilla first in a test environment!! What's cooking for 2.5? -> qc will be able to handle more errors -> Allowing global definitions in qc; Also trying to get rid of the binding system so you can write quests more flexible -> Allowing the server to create routines that'll run while the server is running so they aren't bound to players to trigger them; Instead the server will trigger them -> Again I'm trying to implement the new lua upgrade, but if it won't work, I'll instead make use of some patches to fix problems with the old lua and even add new statements -> Improving readline function so lua will eben be able to read shortenings like using "fu" instead of "function".
  3. I've extended the changelog. Be happy that the gold exploit should be dead now! Additionally we get something cooler now! Instead of getting the account id by using a query, it'll now be accessable without a query. That opens more features like and makes more performant calls to the account-id! Also there's a new questfunction: pc.get_account_id() This function will print out the account id without using a query or something else. There's still more stuff to come, I'll edit the changelog later with more details in it. Still I'm sticking on my words: The release will be today/this night.
  4. Please consider reading the first post. ATTR_CHANGE_LIMIT: int You can set a limit time to change your attributes again. It's changed to seconds (set it to 1 to let the users switch only once per second their attributes). It's a CONFIG option. You just simply can change it. Also you don't have to wait 60 minutes, the time is set in seconds. €: Shogun was faster!
  5. Depending on the game I'd help out with translating too. I'd translate the game engilsh <-> german.
  6. ### Changelog vanilla revision 54180 ### Also known as version 2.4 * stands for changes + stands for additional content or features - stands for removed things -> general <- * changed compiler to gcc 4.9 released version * upgraded boost to version 1.55 * upgraded cryptopp to 5.6.2 + added qc in the bundle! Further versions will now also update qc file! -> qc changes <- * changed compiler to gcc49 and added some tuning in the compiler flags! Now qc will be faster and smaller than before! -> liblua <- Note: Upgrade to lua 5.2 is now shifted away into a future versions since there's still a lot to do. * Recompiled with gcc 4.9 * Made some slight changes to make the lualib more compatible to newer versions -> gameplay improvements <- + Installed advanced spam protection to stop people saying the same stuff over and over + game master will now have the same waiting time when switching bonuses than users -> bugfixes <- * fixed immunity bug * fixed some bugs with CONFIG options that couldn't be recognize nor work properly * fixed a bug where people could cause a yang overflow with shops - removed polymorph bonus since it's just buggy and won't work for most char classes -> CONFIG options <- + The following CONFIG-options were added: empire_chat: 1/0 Enables the global chat! Disabled by default. bigger_inventory: 1/0 Allows the use of up to 4 inventory slots trade_effect: 1/0 Enables a effect that'll occur when people are traing stuff. Enabled by default. ban_force_reason: 1/0 This lets the ban-command only work when you're giving a reason. Disabled by default. -> Quest functions <- + pc.block_exp() + pc.unblock_exp() They may be quite popular right now. This lets the player not receive any exp anymore. The unblock function removes this effect. It's for a working anti-exp ring. + item.equip() Equips the selected item + npc.select() Selects a new npc as the current quest npc. Similar to the pc.select-function + pc.get_id() Prints out the id from the player -> commands <- * ban command reworked. Now works properly and bans the given player. But additionally, this command is also able to read a reason given. /ban PLAYERNAME [REASON] + unban Unbans a player and reverts the ban effects. /unban PLAYERNAME NOTE: This changelog is tentative! There may be some features I just forgot to mention. If there's anything, then just let me know! Release: Downloadlink following soon; Estimated to be up in maximum 2 days; Expected to be tomorrow. What's cooking for 2.5? -> qc will be able to handle more errors -> Allowing global definitions in qc; Also trying to get rid of the binding system so you can write quests more flexible -> Allowing the server to create routines that'll run while the server is running so they aren't bound to players to trigger them; Instead the server will trigger them -> Again I'm trying to implement the new lua upgrade, but if it won't work, I'll instead make use of some patches to fix problems with the old lua and even add new statements -> Improving readline function so lua will eben be able to read shortenings like using "fu" instead of "function".
  7. it works on 64 bit. Here you've got a reference over all common lua functions including the libraries which are enabled (so you can use these functions too). Additionally lua also understands goto-Commands. For counting a table you can use the new operator # So instead of using table.getn(tablename) you can use #tablename If you still need to use table.getn (because of the old scripts) you can easily add the function to your questlib.lua: function table.getn(a) return #a end That single line will do it. Further documentation following.
  8. I'm still making progress on lua 5.2! There's much to do and you'll need to compile your quests with the new qc! But then everything'd work! I'll release the new qc before the new vanilla gamefile just to let you test out if it works. And if everyone is able to compile their quests with it, I'll release the gamefile as soon as it's ready!
  9. Well at this time I actually didn't need help. But a few time ago I asked for help and no one replied, and now I asked again for help, and no one replied either. I know you're appreciating the work, and I'll still continue of course. And I'd have nothing against it if I'd get help sometimes when I really need it. I'd gladly do the work and spend days off working on a new feature, but only if I know I'm not alone in this thing.
  10. Since no one ever decided to help me (even when I was asking) I'm now fully convinced that the community either has no plan on anything (and I really doubt that) or no one WANTS to help anyone. I'm still working on it, so please, don't ask the same question again and again, I'm still working. And since no one ever decided to help, it'll take more time. I'm still thinking of reverting back the lua version and making no further additions, only bug fixes to vanilla core. I'm not in the mood to spent one hour after another on a game core I literally got nothing, not even help or anything. If I'm reverting, it'll take less time and then It'll stay on lua 5.0 and NOT be upgraded anymore (though I'll still develop on a core that'll run 5.2 and that may used for private purpose. I'm still not certain). So please, don't ask the same question "when next version" or report the same "bug" (that only leads to misconfiguration) over and over. I understand that you want the new core, I want it too, but since those who know about the stuff decided to not help it'll just take more time. And I thought this project was a project FROM the community FOR the community, but now I clearly see that it's a project from me for the community.
  11. Hello dear folks! Well, I've got a huge problem and I can't seem to fix it. It's very complicated so I'll just get startet to explain it. I've upgraded lua to 5.2 as you may know. The server starts without any flaws, everything seems to work, it even understands the when-blocks etc.. Ingame you can see all the quest scrolls in the left side so even that works. And if you click them everything seems to work - unless some special parts and this is where the error lies. I've extended the error output to see more information. Whenever there are instructions like "select" it'll throw out an error. SYSERR: Apr 24 17:56:10 :: RunState: LUA_ERROR: wait WITH ERRORCODE YIELD SYSERR: Apr 24 17:56:10 :: RunState: LUA_STATE: index 1372862141 ref 3 SYSERR: Apr 24 17:56:10 :: WriteRunningStateToSyserr: LUA_ERROR: quest main_quests.main1_start click This is an example where the wait-instruction won't work. In some cases letters open and text will be displayed, but there are no selections. So when I click on the blacksmith nothing happens but a nice error message like this. Here is an example: SYSERR: Apr 24 17:44:40 :: RunState: LUA_ERROR: select WITH ERRORCODE YIELD SYSERR: Apr 24 17:44:40 :: RunState: LUA_STATE: index 0 ref 3 SYSERR: Apr 24 17:44:40 :: GetQuestStateName: QUEST wrong quest state file QUEST_CHAT_TEMP_QUEST.0 It's a little bit strange to have the index 0 I don't know if it's related to the error but as you can see in the upper example that the index worked fine there but still it's giving me an error. I also tried something like this: int ret = lua_resume(qs.co, NULL, qs.args); int y = 0; while(ret == LUA_YIELD) { ret = lua_resume(qs.co, NULL, qs.args); sys_err("LUA_ERROR: COROUTINE IS YIELDING! RETRYING. ATTEMPT %d", y); y++; if(y>=1000) { sys_err("LUA_ERROR: CAN NOT WAKE UP COROUTINE."); break; } } But well, the only result is this: Many quest scrolls disappeared and when I click on the blacksmith it tells me that it's Retrying with Attempt 0 (so it's the first time the loop is executed). Then nothing happens. It seems like in the second attempt the lua_resume returned LUA_OK but I guess the stack is lost so it won't do anything at all. It's very confusing :/ I hope someone with knowledge in c++ and the lua api is able to help so vanilla can be finished for everyone! There's to much work spent in this upgrade, I don't really want to go back to 5.0. And I won't. I'll still try but I hope someone could help me so I'll pass this faster. Best Regards, vanilla
  12. Sorry, got too much work to do >.< There are plenty errors with the quest states, seems like the way lua uses coroutines has changed. Now I need to further adapt the sourcecode. Some parts of some quests are working but for example multiple selects like in npc talkings won't work. That's why I need to make some further adaptions, that's why I literally got no time for supporting >.<
  13. What are you using? Vanilla core? Are you also using it's db-cache? Otherwise, the dbcache won't be able to handle the extended table-lengths and this causes some errors with coordinations. And if you're using vanilla core, then what revision/version are you using? Please use the newest one and also use the vanilla db-cache, then the next login will reset you to the right coordinations. Sorry if I don't clearly understand your problem.
  14. Hey, good new to you folks! Vanilla rev 53180 (v2.4) succesfully booted again! It now correctly interprets when-blocks and damn it's fast! Now the booting time is drastically reduced due to the new changes. I'm working on implementing old functions now and bring them back (like getn). It's no problem to do this so except a release very soon! Oh, and the operators came all back. I'm now only working on compatibility with the old quests, but everything else works fine!
  15. I'm now trying to make it more comfortable. The problem with the escape strings should be solved now. Also I've got some work on the operatores done. Welcome back beloved != operator! It'll now work with both operatores, either ~= or != Also there are some new instructions you can use. For example now the goto-instruction is implemented and you can also use :: If I'll keep up with the work there won't be any changes needed. It'd be adaptable to the old way of writing quests while still being able to fully understand the new instructions. Also I've activated the loading of every standard lib provided by lua. Now there's also a package-lib you're free to use. Additionally I monitored a drastically shortened boot time until the server worked through everything. I don't know if it's related to this but it'd maybe lead to a faster initializing of the lua components. Or it's the rebuilt and work with gcc4.9, I don't know, fact is: It's damn faster. Deprecated functions could still work. Testing is needed. But I've enabled compatibility options to make sure the old functions still work. They'll automatically be redirect to the newer functions by lua.
  16. Something occured. I upgraded to lua 5.2 but there's something new on it. The new version requires more exact operations. The operator != won't work in this new version. So you'll have to replace it with ~= Also there seems to be problems with some strange escaping symbols (they occur in the questlib made by mijago and in the locale, chinese stuff that will be counted as escape strings). So you people would need to make some adaptions to run the new vanilla version. Now I'm asking you: Do you still want lua 5.2? In that case, you'd have more options and functions than ever before, you'd have the newest version out there. But on the other hand you'd have to make some adaptions on your quests (only small changes, nothing big).
  17. empire_chat is an upcoming feature. It's not yet implemented but will be in the next version.
  18. Got some news for you! Say hello to boost 1.55, cryptopp 5.6.2 and lua 5.2!
  19. Still some little time needed since there may be more bugs like the shop yang overflow. It's mechanism that stops the user from going higher than the limit and will prevent him from getting - yang. I'm investigating on why it can be exploited and fix it. @Tasho: int is meant as the datatype you can insert here. This means, you should not type in literally 'int'. Instead, use a number within the range of int.
  20. @Minion: Thanks for reporting the bug. I'll make the time for implementors too and check it then. If you specify 0 as the switching time, there'd be no waiting time anymore. I'll check if it works. GMs etc. should also be affected by the switching time in the next version. But be careful that the time should be given in seconds, not minutes! You can use every serverfiles. 2010 should do the job. If you want to use the features of newer files you can also enable them one by one in the CONFIG.
  21. Which bug do you mean? I don't remember having any bugs with bonus changing. Please be more exact when reporting bugs.
  22. The double kill count will be fixed in the next version. Thank you for telling me. Connection refused = the server can't connect to the database because it refuses the connection (maybe wrong user/password or something else that doesn't allow the server to connect). This has literally nothing to to with the revision change. You can also update your current freebsd version to 9.2! You don't have to install a new machine (but I'd recommend doing so). A full tutorial was already written in this thread, but you can view it in the freebsd manual too. It's really easy to upgrade the system. €: Today is patch day! I'll rebuilt vanilla with the newly released gcc 4.9 (now that it's relesead I'm ready to use it instead of 4.8). Tell me your thoughts about the new gamefile compiled with 4.9 then!
  23. If the item just doesn't exists it's not a problem with the game core, it's just a normal error. I'd let the game run despite having this error but it'd just make no sense cause the special_item_group is clearly damaged through this. And the server can't give out items which doesn't even exist.
  24. Did you check if the item exists in your item_proto? In my files it wasn't the case. Next version coming soon with toggleable global chat, immun bug fix and some other tweaks.
  25. Well, I don't have to fix such issues because I stated that you need to use vanilla db. The tables are different from the normal game/db-tables. Otherwise I wouldn't have been able to fix the hp overflow for example. That's why you need the new db cache and if you don't use it, bugs will come. I guess it's clear now that you need both. These are no bugs. Please give only bug reports when you use both game and db from the vanilla package. If there are still bugs feel free to report them as usual.
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.