Jump to content

Recommended Posts

Posted

Oct 18, 2013 - Moved to http://hercules.ws/board/blog/13/entry-41-get-ready-get-hype-the-road-to-lua-with-hpm/

 

------------------

Continued from the same thread on the eA site.

This is a development branch that replaces the rAthena script engine with a Lua script engine. The commands have been written, the NPCs have not, and some functionality must be completed.

This project is based off the old eAthena project found here: http://eathena-proje...l/DracoRPG/lua/

I just happened across this one day and decided I would make an attempt at finishing it, and props to everybody who worked on it.

  • Upvote 10
  • 1 month later...
Posted

Got a big update in the works. About 3/4ths done merging this into rAthena Done and I'll continue my work on variable storage/autobonus/finish converting scripts/other stuff I can't think of yet but I'll post it when I remember but those 3 are the biggest issues

  • 1 month later...
Posted

A conversion script is the most feasible idea. The problem is it wouldn't be very well written by Lua standards.

In other news, I got rid of LuaSQL today. I was writing the db queries to handle variable storage and found that the bindings weren't able to prepare statements, which had me looking for one that could - and that was LuaDBI.

  • Upvote 2
  • 3 weeks later...
Posted

Still alive, but having to plan out the rest of my short term work so I don't get bogged down by too much. I'm taking notes on what I need to remove to get the old script engine out, since technically it's still in but disabled since I decided at the time that trying to remove it and fixing whatever that depended on it in the source took more time than I would've liked to put in it.

Also I plan on having an update next week.

  • Upvote 1
  • 3 weeks later...
Posted

So what's been holding me up for so long was 1) i got a new job and 2) I was torn on how to finish off variable storage.

It came down to this. I needed to send registries from map to char or login for saving, but I had 2 ways to do it. I could either do it with Lua or do it using rA's inter-server stuff. Tried the latter first. Then I realized that doing it with inter-server functions is really hacky (take variables from Lua -> conver to struct -> send to char/login -> char/login reconstructs the table, send it back to Lua then save it. So I decided to just have char/login server have its own Lua server just to handle that since I was already giving char/login their own lua states for sqlite support. Now I'm in the process of writing that.

Posted

LChar-Server can now save registries to a sqlite or mysql database.

It also has user authorization. Just need to plug this into rA so I can use the hashing functions for the inter-server user/pw.

LLogin-Server being worked on.

  • Upvote 1
  • 2 weeks later...
Posted

When I first started this, I didn't take out all of the old script engine code since I didn't want to break anything. Now I'm tired of looking at it since I'm closer to being done. Next few updates will probably be centered around taking that engine out and cleaning up what's left.

  • 2 months later...
  • 1 month later...
Posted

I wonder if a Lua server could read certain client lua files (copied as-is with no format modifications), for things like the const.txt database and other IDs?

  • 2 weeks later...
  • 4 weeks later...
Posted

I wonder if a Lua server could read certain client lua files (copied as-is with no format modifications), for things like the const.txt database and other IDs?

It can. If you loaded it plain they would all be defined as globals.

I don't see why not.

I'd almost make sure a all the scripts are lua ready if i knew sketchy was more then 60% complete :D

Most of the commands work. The only ones I haven't worked on were item scripts.

Will this allow you to store strings and arrays on characters and accounts? Because that would pretty much be the most bad ass thing ever.

Considering the variable handling is being done entirely* in lua, all it takes is for one to write a script to do it.

*still using athena's inter-server functions for sending the right variables to the right server for saving, but the db operations for it will be done in lua so anybody can use their own (supported by luadbi anyway) engine if they wanted.

  • Upvote 1
  • 2 weeks later...
Posted

I wonder if a Lua server could read certain client lua files (copied as-is with no format modifications), for things like the const.txt database and other IDs?

It can. If you loaded it plain they would all be defined as globals.

I don't see why not.

I'd almost make sure a all the scripts are lua ready if i knew sketchy was more then 60% complete :D

Most of the commands work. The only ones I haven't worked on were item scripts.

Will this allow you to store strings and arrays on characters and accounts? Because that would pretty much be the most bad ass thing ever.

Considering the variable handling is being done entirely* in lua, all it takes is for one to write a script to do it.

*still using athena's inter-server functions for sending the right variables to the right server for saving, but the db operations for it will be done in lua so anybody can use their own (supported by luadbi anyway) engine if they wanted.

-drool-

of course you come back and reply when I am really busy! work sucks mmhmmm

  • Upvote 1
  • 4 months later...
Posted (edited)

Just posting to inform everyone that I've been fixing bugs the past day or so.

Ill need to put this on another repo since I don't have svn here and ill update the links when I do done

Edited by sketchyphoenix

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...