Eluna
5 files
-
Custom Talent Tree AIO
By Atraxian
Requisites:
- Eluna module and AIO scripts on your core + client
How to install:
- copy Server_Talents into your lua_scripts folder in the core
- add the content of client patch folder into a client patch
How to use:
- add the talent tabs for your class to the customTalentual.tabInfo variable declaration (the code has some examples for Druid and Mage)
- add the spells for your class and tabs in customTalentual.talentualSpells
you can selece the colimn and row of the spell and up to three required spells.
NSx goes from 0 to 6 in order to show diagonal and bottom arrows for the talent tree
NHx goes from 0 to 3 to show horizontal arrows
IMPORTANT: the system will only work properly for spells that show up on your spellbook, so if you want to use a normal talent for this system, edit it with Stoneharry's spell editor and remove the DoNotDisplay flag from the spell.
- to change the requisites for learning a talent and the number of available talent points look for the CheckRequisites and updatetalentpoints() functions respectively. At the moment it checks if you have at least 8 talent points spent to give you access to the fifth row and 20 talents spent to give you access to the 8th row and checks for at least one of the up to three requires spells for a talent.
- left click to learn a talent
- right click to forget a talent. If setup properly, forgetting a talent will automatically forget all other talents that no longer have correct dependancies.
ADDING talents to the trees
add a row in customTalentual.talentualSpells similar to the ones in the mage section, select one of the specializations in the square brackets
-id: is the id of the spell
-itemType = "spell" for reasons internal to the original scripts
-row is the row where the spell will appear
-column: is the column at which the spell will appear
-TT: unused, I planned to use it as some extra customization, but never went around to doing it Now used to differentiate between kind of talent tabs, see changelog below
-RSp1, RSp2, RSp3 = spell IDs of the required spells for the talent, you need to know ony one of them, 0 for no requirement
-NSx = from 0 to 7 are the diagonal and down arrows to show in the talent tree
-NHx = from 0 to 3 are horizontal arrow to show in the talent tree
Hope you like it.
Credits:
Custom talent system using a modified version of the racialUI shared by awjerfaoiwejfoiajwe here (which in turn is a modified version of the lua custom store system)
World of Warcraft 2024-10-26 08-50-27.mp4161 downloads
Updated
-
[LUA] [Eluna] Custom ServerShop
By dufec0
Hi everyone, I want to share with you a rather unique and working store for your server AzerothCore , TrinireCore and Mangos for 3.3.5a
It works on Eluna written in Lua and uses the AIO module which can be downloaded from the link - LINK
I will be glad to your likes and discussions
Installation:
DB flags and other config specific stuff:
A special thanks : Foereaper
163 downloads
Updated
-
Discord User Authentication
By GrimReapaa
Ember's Discord User Authentication Integration (LUA/PYTHON)
This is a mod for intended for Azerothcore's Eluna module, and should be compatible with Eluna's TrinityCore branch as well.
This mod is intended to be used in junction with Ember's Discord Registration Bot, or if you do not want to satisfy that requirement, users must have their discord ID associated with their email in your accounts database.
This somewhat acts as a whitelist for your World of Warcraft server. On server startup, the server starts "DUA.py" which runs a discord bot (ideally the registration bot in this case). You must configure your Discord API key in the PY file. DUA_DB.DUA is made, which is a file that holds all member IDs and relevant roles, if they have any. You must configure relevant role IDs in both the PY and LUA file. When a player logs in, the LUA script runs DUA.py, but this time DUA.py is only searching for that player's associated Discord role in the DUA_DB.DUA file. If any relevant roles are found, the server does nothing. But if no relevant roles are found, or if the user does not exist, then the server will inform the player and they will be kicked for failing to authenticate via Discord.
The intended purpose of this module is to ensure all players accessing your World of Warcraft server are registered via Discord. Some relevant role comments remain to provide ideas that might identify a use case for your server.
Current Compatibility
- Eluna TrinityCore 3.3.5
- Azerothcore Eluna Module 3.3.5
Requirements
- Python3
- Pip Packages: `mysql.connector`, `discord` via `pip install`
- Easy Linux Command that installs the packages for you: `pip install mysql.connector && pip install discord`
Installation Instructions
Create a Discord Bot
1. Access Discord's [Developer Portal](https://discord.com/developers/applications) and create a `New Application`.
2. Navigate to the `Bot` section of your application settings and click `Add Bot`.
- Set the username and profile icon of the bot.
- Reset and save your bots `Token`.
- No permissions are required, as the bot interacts via direct messages with users.
3. Navigate to `OAuth2` -> `URL Generator`.
- In the `Scopes` section:
- [x] `bot`
- Copy the `Generated URL` and paste it into your browser to invite it to your server.
4. The bot should now be visible (_though offline_) in the server you invited it to.
Edit DUA.py
1. In `DUA.py`, there is a list called "relevant_roles" where placeholder values "123" exist.
2. Replace the contents of this list with the Role ID you desire.
3. Ensure the values you enter are NOT in quotes.
4. Save and exit.
Edit DiscordUserAuthentication.lua
1. In `DiscordUserAuthentication.lua`, find the array "relevant_roles" where placeholder values "123" exist.
2. Replace the contents of this list with the Role ID you desire.
3. Ensure the values you enter are kept in quotes.
4. Replace `PATH_TO_DUA_EVENT = "/home/server/bin/DUA.py"` with the location of your `DUA.py` file.
- Temporary `.DUA` character files are stored in the bin directory and may appear there.
6. Save and exit.
To Do
- Provide a check for staff and validate their RBAC roles.
- Output log information to discord channels.
Disclaimer
This is still in active development and will see updates in the future. There are some things in there like mysql connector when it doesn't use it. I just feel this feature is important to release and will lose opportunity in other areas if I spend too much time here.
Contribute
If you'd like to contribute, please fork and create a pull request. Your code will be reviewed and then merged with the main branch.
14 downloads
Updated
-
[Eluna/LUA] Wisp Of Rain
By GrimReapaa
I'm not sure if this content will help anyone, but it's here in an effort to keep the content I create open-source.
This feature is intended for the original gameplay loop of World of Warcraft, rather than roleplay functions that I've made before. The terms are explained below in CONFIG values, but I'll use english here. Basically, a player can walk up to a vendor to buy the item Wisp of Rain. They can learn the spell Wisp of Rain. When killing any creature within XP range, there's a 1% chance a wisp will spawn. The wisp autocasts arcane explosion currently. If the player has the optional Wisp of Rain : Wisp Buff item, the wisp is invulnerable unless stunned or interrupted. When killed, the wisp rewards all party members who have Wisp of Rain with a random buff or debuff such as -1 strength, +1 dodge, -1 expertise, etc, etc. If the player has an optional Wisp of Rain : No Debuffs item, the wisp only distributes buffs to that player.
Thanks for reading. If you find any use for this I hope you enjoy it. Downloading the file will take you to a Github repo where the code for this feature is stored.
elunamod-wispofrain
This is a mod for Eluna for Azerothcore/TrinityCore.
Description:
When a user kills a creature, they have CHANCE_TO_SPAWN_WISP / MAX_CHANCE chance to spawn a wisp, provided they have the RISK_OF_RAIN spell. WISP_ENTRY will autocast from SPELL_ARRAY until killed or WISP_DURATION seconds have passed. If the killer or any party members have RISK_OF_RAIN_MOD_HARDMODE, then SHIELD_SPELL is on WISP_ENTRY until interrupted or stunned. If WISP_ENTRY is killed, then killer and party members will receive a random ID from BUFF_ARRAY / DEBUFF_ARRAY. As the buff is distributed, if RISK_OF_RAIN_MOD_NODEBUFFS is held by the unit, then that unit will only receive buffs. All of the above values can be changed in the LUA file itself.
Select your world database Import the code at the beginning of RiskOfRain.lua, specifically from where it says "SQL STARTS" to "SQL ENDS" If you have a spell_dbc_12340 table from WDBX Editor or Stoneharry's Spell Editor, import the SPELL.DBC SQL from where it specifies start to end. If using AzerothCore, you can instead edit these queries to insert into spell_dbc rather than the above table. You will NOT need to recreate the DBCs for the server or the client. If you do not have a spell_dbc_12340 table, you will need to edit the contents of your spell.dbc to match these SQL values. Good luck! (It will be much easier to do the above) Recreate spell.dbc and import it to your sever and client
45 downloads
Updated
-
Teleport Stone.lua
By Maxmusor
This is My Hearth Stone, teleporter and General Spell Trainer.
85 downloads
Updated