Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

EO's Guildsystem


Notsu
 Share

Recommended Posts

Hello, I'm making an simple guildsystem for eo, not because I don't like the existing one done by Scott but that have huge options what I don't need.

So, I'm made it based on player variables, I'm adding data variables like GuildName, InGuild etc. and I'm not sure if it's an good way to make it.

What did You think about it?
Link to comment
Share on other sites

> just delete the options you don't want…

Although that's easier, I encourage him to make a blank one by himself because you'll learn more by that. ![;)](http://www.touchofdeathforums.com/community/public/style_emoticons/<#EMO_DIR#>/wink.png)

About the question you asked:

That looks like a good way to do it, but I don't know what kind of guild features you want so i can't say if that's enough.
Link to comment
Share on other sites

What I (personally) would do, would be to keep the membership in two locations.. Both on the Player and in the Guild itself. (although the Player variable could be just a number refering to the guild) This way you can check if the player has been kicked, or their rank and whatnot has been changed since their last logon, (OR, if the guild still exists to begin with) and act accordingly.
Link to comment
Share on other sites

Thanks for replies.

I store names of the guilds in .txt file like account names are stored in eo. To associate player with guild 'im using string variable with name of guild, to check if player is in guild am using byte variable(true/false).

Features what I'll be adding:

- guild war system(score counting)

- join/leave/delete guild

- change guild leader

- guild chat

- player ranks

and that's all I think…

I do not know whether it is better to create and load the guild data files or do it by this way(loading from player data).
Link to comment
Share on other sites

The way I did it was I have 2 pieces of info stored with the player, a guild-id(the file where the guild data is stored) and the slot the player is in the members list which is there so I can skip looping to find them every time(it will loop if it can't find them in that slot tho so if I want to kick a user I just remove them from the list and when they login next time, it will not find them and remove them for you).

Then in tempplayer data I have a variable that points to which slot the guild they are in is loaded to kinda like how items have items(1-225) I had Guilds(1-Max_Players) so I could just call something like Guilds(TempPlayer(index).TempGuildSlot).blabla or even Guilds(TempPlayer(index).TempGuildSlot).GuildMemberSlot(Player(index).GuildMemberSlot).Rank sorta thing.

On login I placed a call to a new GuildLoginCheck sub that loads the guild into memory when a user logins in and no one else in the guild is online, if some one else from there guild is logged in it will just place that tempplayer pointer to the already loaded guild. On the logout sub I had the reverse, if no one else from the guild is online time to clear that from memory.

You don't have to do it this way, just figured I'd give you a more detailed explination since you still seem to be deciding how to do it.
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...