Jump to content

Recommended Posts

Posted (edited)

If you're ever bored for something to do eressea, L2NPC from GF contains the fully functioning lexer/parser for NASC compilation, just doesn't have the init procedures/constructors

 

for compiling the hole ai.nasc you would need to do it with the built in compiler in npc.exe like someone already pointed out.

 

Ok, I'm going to try it.

 

I'm working with l2npc - extending it and calling code that invokes compilation instead of loading AI and spawning NPCs :)

 

So far:

  • Allocated some space for the lexer/parser instance
  • Called constructor @ 0x5C9980 on parser instance
  • Called function @ 0x5BE2B4 on parser instance with parameter L"citizen.nasc" (prepares input file, returns true which means ok)
  • Called function @ 0x419D84 with parameter "ai.obj" (creates output file)
  • Called function @ 0x419E40 with parameters sizeof(void*), 69, 79, 2, 2, 0 (writes header)
  • NOW I'M MISSING SOMETHING HERE
  • Called function @ 0x5D7F70 on parser instance (compiles the program, returns 0 which means ok)
  • Checked UINT32 @ 0x37886C0 (error count, is 0 now)
  • Now it would have been done if I didn't miss the step I'm still missing

... work in progress ...

 

If anyone has any additional info, let me know :)

 

If I manage to make functional compiler for GF, I'll make it part of MyExt64 (so it will be open source).

Edited by eressea
Posted

Tell me what you can edit the AI? Decompile and compile?

 

You can either edit it manually in ai.obj (it's not easy but it works if you do it well) or decompile and recompile it.

At the moment there is probably only one REALLY working decompiler made by Sauron as mentioned here http://www.maxcheaters.com/topic/203399-myext64-my-new-opensource-gracia-finalepilogue-extender/page-12?do=findComment&comment=2609299 and one working compiler that can be bought from AdvExt.

I'm currently trying to implement the compiler too so it would be free for anyone...

Posted (edited)

Got it! https://bitbucket.org/l2shrine/extender-public/commits/5292c28a57e8ee4b4eba641c4692be6afa203f46

Is this really what guys from AdvExt sell for $100 with key lock?

 

I'll try to add support for constants like PSTATE_IDLE soon...

 

Also I'll write new topic about the compiler soon (with how to use etc)

Edited by eressea
Posted

Got it! https://bitbucket.org/l2shrine/extender-public/commits/5292c28a57e8ee4b4eba641c4692be6afa203f46

Is this really what guys from AdvExt sell for $100 with key lock?

 

I'll try to add support for constants like PSTATE_IDLE soon...

 

Also I'll write new topic about the compiler soon (with how to use etc)

It would be very good! And the script to file for epilog is impossible. And much more. Thank you for your efforts!

Posted

So new gf bug! in ncsoft's infinite wisdom they aren't checking on private store setup whether the items you're trying to buy/sell are actually tradeable, so phx send up the object id of an untradeable in private store packet and boom you can now trade untradeables

Posted

So new gf bug! in ncsoft's infinite wisdom they aren't checking on private store setup whether the items you're trying to buy/sell are actually tradeable, so phx send up the object id of an untradeable in private store packet and boom you can now trade untradeables

 

Thanks for info! Going to fix this when I have some time for it...

Posted

another one i remember is agro bug, if you will target person who cast agro on you before he ends his cast, you will be able to change target once cast is finished even with debuff on - target lock will not work. Widely scripted back in times, still not fixed in most packs.

  • 3 weeks later...
Posted

another one i remember is agro bug, if you will target person who cast agro on you before he ends his cast, you will be able to change target once cast is finished even with debuff on - target lock will not work. Widely scripted back in times, still not fixed in most packs.

 

I'm not able to reproduce it, maybe I'm doing it wrong. What should I do? :)

 

Also we've found another bug, this time it's race condition. When player logs in and something triggers character save to database before fame points are loaded (it's loaded asynchronously), there is very small chance of resetting the points to zero. I have it already fixed and will push the fix to bitbucket soon.

Posted

I'm not able to reproduce it, maybe I'm doing it wrong. What should I do? :)

 

Also we've found another bug, this time it's race condition. When player logs in and something triggers character save to database before fame points are loaded (it's loaded asynchronously), there is very small chance of resetting the points to zero. I have it already fixed and will push the fix to bitbucket soon.

 

 

waiting for bitbucket update!

Posted (edited)

waiting for bitbucket update!

 

Pushed fix for disappearing Fame points, showing offline trade player count in status window and another fix for hide skill (in fact I'm starting to hate that skill) https://bitbucket.org/l2shrine/extender-public/commits/all

Edited by eressea
Posted

Pushed fix for disappearing Fame points, showing offline trade player count in status window and another fix for hide skill (in fact I'm starting to hate that skill) https://bitbucket.org/l2shrine/extender-public/commits/all

 

WOW! tks for update it, keep this amazing work up ! please :)

Posted

Pushed fix for disappearing Fame points, showing offline trade player count in status window and another fix for hide skill (in fact I'm starting to hate that skill) https://bitbucket.org/l2shrine/extender-public/commits/all

 

Just a question, this extender is the same used into your live server?  https://l2shrine.com/

And tks for your amazing work

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

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.




  • Posts

    • Lol good joke.   If I'd be the one contacting yo then I'd say at least 50% in advance because you can basically just fuck off when things doesn't go your way, and then you as a developer just wasted days or even weeks of time with development.
    • "Just make your own game!" sounds simple until you’ve tried it. I did, with Epic Dragon World and learned the hard way that "open source" often means "free labor for resellers." The MIT license became a buffet for people to grab code, rebrand it and ghost the project. Even basic collaboration collapsed because everyone wanted their vision, not *a* vision. NCSoft’s lawyers aren’t theoretical. They’re a sword of Damocles. Even if you rebuild a client from scratch, if it feels like Lineage 2, they’ll come knocking. Ask the Chrono Trigger fangame corpses how that goes. MMOs are hospice care. The genre’s on life support, kept alive by whales and nostalgia. Look at Throne and Liberty, NCSoft’s own "successor" to L2, flopping harder than a 2004 PKer in ToI. Classic reboots (WoW, L2) are bandaids, not resurrections. This is the hobby. Optimizing old systems, reverse-engineering spaghetti code and preserving janky mechanics is the fun part. Monetizing it turns it into customer service hell. No thanks. Community? What community? The L2 scene is 90% resellers, 10% players who’ll quit the second they don’t get +16 on day one. Both asking how to install Java and why running the uncompiled server does not work.
    • Dear players, Open beta test for C3 begins today at 19:00 server time (GMT +2). 💰 All participants who find bugs during OBT will be rewarded with Coin of Luck (CoL): - 1 CoL for each staticmesh issue found — e.g., walking through textures, etc., - 2 CoL or more for server-side issues, depending on their severity., We strongly recommend reviewing the quest list - when switching to Chronicle 3, the total number of quests should match the number shown in the upper right corner of the window and correspond to the quest count from Chronicle 2. To log into the game, use the same data you use to access the Airin server. 📌 Download client: Google Drive
    • 🔥 Sale Alert! 🔥 Twitter Accounts with 50 Followers — now on SALE! Looking to launch a project or warm up your account base fast? We’ve got starter Twitter accounts with ~50 followers at a sweet price. 💰 Limited-time offer – while stock lasts! ✅ Organic-Looking ✅ Clean & Safe ✅ Perfect for boosting credibility 📦 Instant delivery
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock