Jump to content

Recommended Posts

  • 3 weeks later...
Posted (edited)

Free release only for 17310 rev.

Do you mean if I want to support the last/new version rathena, i should buy paid version of faction system?

Because I didn't see the quota of paid version in here.

Edited by Darkpurple
  • 3 weeks later...
  • 1 month later...
Posted (edited)

i have problem

1>------ Построение начато: проект: map-server_sql, Конфигурация: Release Win32 ------
2>------ Построение начато: проект: login-server_sql, Конфигурация: Release Win32 ------
2>  login-server_sql.vcxproj -> C:\rathena\vcproj-10\..\login-server_sql.exe
1>  faction.c
1>  script.c
3>------ Построение начато: проект: char-server_sql, Конфигурация: Release Win32 ------
1>..\src\map\faction.c(444): error C2039: msd: не является членом "pet_data"
1>          c:\rathena\src\map\pet.h(75): см. объявление "pet_data"
1>..\src\map\faction.c(445): error C2039: msd: не является членом "pet_data"
1>          c:\rathena\src\map\pet.h(75): см. объявление "pet_data"
1>..\src\map\faction.c(445): warning C4033: "faction_get_id" должен возвращать значение
3>  char-server_sql.vcxproj -> C:\rathena\vcproj-10\..\char-server_sql.exe
1>..\src\map\script.c(10925): error C2065: val2: необъявленный идентификатор
4>------ Построение начато: проект: mapcache, Конфигурация: Release Win32 ------
4>  mapcache.vcxproj -> C:\rathena\vcproj-10\..\mapcache.exe
========== Построение: успешно: 3, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
			if( ((TBL_PET*)bl)->msd )
				return ((TBL_PET*)bl)->msd->status.faction_id;



		val2=script_getnum(st,5);

Открываем ../src/map/faction.c и в функции faction_get_id меняем:

case BL_PET: // Pet
if( ((TBL_PET*)bl)->msd )
return ((TBL_PET*)bl)->msd->status.faction_id;
на:

case BL_PET: // Pet
if( ((TBL_PET*)bl)->master )
return ((TBL_PET*)bl)->master->status.faction_id;
В коде скриптовой функции setmapflag(../src/map/script.c BUILDIN_FUNC(setmapflag)) Вы забыли заменить:

int val=0;
на:

int val=0, val2=0;

 

При выборе фракции ничего не происходит. если выбрать "0" то падает мап сервер, как решить?


+ в додачу зависает окно или страшно лагает


[Error]: WFIFOSET: Dropped too large client packet 0x00d8 (length=53824, max=24576).
[Error]: WFIFOSET: Dropped too large client packet 0x00c0 (length=34077, max=24576).
[Error]: WFIFOSET: Dropped too large client packet 0x00c0 (length=34077, max=24576).
[Error]: WFIFOSET: Dropped too large client packet 0x07fb (length=34077, max=24576).
[Error]: WFIFOSET: Dropped too large client packet 0x07fb (length=34077, max=24576).
[Info]: Saved guild (26 - Ar▒▒ne): members
[Info]: Saved char 150370 - Stellars: status status2.
[Error]: WFIFOSET: Dropped too large client packet 0x01eb (length=34125, max=24576).
[Error]: WFIFOSET: Dropped too large client packet 0x00c0 (length=34077, max=24576).
[Info]: int_guild: guild withdraw (26 - 2000205: Stellars - )
[Info]: Saved guild (26 - Ar▒▒ne): members expulsions
[Info]: Saved char 150363 - ▒▒▒▒▒: status.
[Error]: WFIFOSET: Dropped too large client packet 0x0086 (length=34077, max=24576).
[Error]: WFIFOSET: Dropped too large client packet 0x00c0 (length=34077, max=24576).
[Error]: WFIFOSET: Dropped too large client packet 0x00c0 (length=34077, max=24576).
[Error]: WFIFOSET: Dropped too large client packet 0x00c0 (length=34077, max=24576).


Когда пишешь в чат у всех зависает окно...


Если писать на локации где включено fvf то никаких проблем не возникает.

И как убрать формулу дамага fvf, у меня стоит мод на skill_damage_db.txt, но он тогда не работает на fvf локациях.

Edited by zdox21
  • 3 weeks later...
Posted (edited)

Will there be any more updates on this?

This seems to be a great source mod that could open up plenty of things to a server.

 

Interested in using it.

 

EDIT: Or if someone is able to give me a copy of a r17310 of rA, I would like to test this out. Kindly link me up please.

Edited by Nitrate
Posted

^You can download it trough TortoiseSVN

If you already have the software installed then Checkout rAthena and in Revision type 17310 on it, Click OK and your done :)

 

Oh shoot, you can do that? That changes everything!

Thanks. <3

Posted (edited)

Hello all! :)

Now i present to you my release : Faction system.

 

Faction system settings:

conf/battle/faction.conf

//--------------------------------------------------------------

// Faction system configuration file [Lilith]
//--------------------------------------------------------------
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
//         assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
//--------------------------------------------------------------
 
// What unit type can receive faction status (race, element...) Note 3
// 539 = PC(1) + MOB(2) + HOM(8) + MER(16) + ELEM(512) (Default)
faction_status_bl: 539
 
// Faction chat settings.
// 1 = Colored messages
// 2 = Hide names from other factions (except Alliance)
// 3 = 1+2 (Default)
faction_chat_settings: 3
 
// Start FvF mapflag on all maps? (Note. 1)
fvf_in_all_maps: yes
 
// Display HP bar in the same factions? (Note. 1)
fvf_hp_bar: yes
 
// Damage adjustment settings, these follow the same logic as their WoE counterparts (see guild.conf)
fvf_short_attack_damage_rate: 80
fvf_long_attack_damage_rate: 80
fvf_weapon_attack_damage_rate: 60
fvf_magic_attack_damage_rate: 60
fvf_misc_attack_damage_rate: 60
 
// Change this to define the minimum level players can fight in FvF
fvf_min_lvl: 55
 
// Display unit's faction size? (visual effect)
// 0 - disable
// 1 - only FvF maps (Default)
// 2 - everywhere
fvf_visual_size: 1
 
// Unit type for setting 'fvf_visual_size'. (Note 3 except Mercenaries)
// 527 = PC(1) + MOB(2) + PET(4) + HOM(8) + ELEM(512) (Default)
faction_size_bl: 527
 
// Display faction aura?
// 0 - disable
// 1 - only FvF maps (Default)
// 2 - everywhere
faction_aura_settings: 1
 
// What unit type can receive 'faction_aura_settings'. (Note 3)
// 671 = PC(1) + MOB(2) + PET(4) + HOM(8) + MER(16) + NPC(128) + ELEM(512) (Default)
faction_aura_bl: 671
 
// What unit type can display 'enemy' over head?
// 539 = PC(1) + MOB(2) + HOM(8) + MER(16) + ELEM(512) (Default)
faction_ally_info_bl: 539
 
// Faction leader message color ( @factionannounce <message> )
// 0xRRGGBB
chat_leader: 0xFF66FF
 
// Should the player's dye change own color?
// 0 - disable
// 1 - only FvF maps (Default)
// 2 - everywhere
fvf_change_ccolor: 1
 
// Can the faction with race or element Undead/Demon use healing skills to oneself ? (Note 1)
// 0 - disable
// 1 - Only same faction members (Default)
// 2 - Alliance faction members
faction_heal_settings: 1
 
// What unit type can receive 'faction_heal_settings'. (Note 3)
// 19 = PC(1) + MOB(2) + MER(16) (Default)
faction_heal_bl: 19
 
// Faction party settings:
// 0 - Allow members to talk with NPC in same faction (Default)
// 1 - Allow members from alliance to talk with NPC
// 2 - No restrictions
faction_npc_settings: 0
 
// Faction party settings:
// 0 - Allow members in same faction to join same party (Default)
// 1 - Allow faction members from alliance to join same party
// 2 - No restrictions
faction_party_settings: 0
 
// Faction guild settings:
// 0 - Allow members in same faction to join same guild (Default)
// 1 - Allow faction members from alliance to join same guild
// 2 - No restrictions
faction_guild_settings: 0
 
// Faction trade settings:
// 0 - Allow members in same faction to trade (Default)
// 1 - Allow faction members from alliance to trade
// 2 - No restrictions
faction_trade_settings: 0
 
// Max Discount & overcharge settings ( percentage )
// By default: max discount is -100%, overcharge is 100%
faction_disc_min: -100
faction_disc_max: 100

 
Faction data base:

db/faction_db.txt

// Complete Faction System [Lilith]

// ID,Faction Name,Faction Player name,Location,X,Y,Race,Element,Element lvl,Size,Clothes Color,Color of mes,{ Aura: #1 #2 #3 },{ Script Bonus },{ Faction Aura Script Bonus }
// * ID: Faction ID
// * Faction Name: Faction Name
// * Faction Player name: Player's name on FvF maps
// * Location: Faction Location (home)
// * X: X coordinate for faction location
// * Y: Y coordinate for faction location
// * Race: 
//        0 = Formless, 1 = Undead, 2 = Brute, 3 = Plant, 4 = Insect,
//        5 = Fish, 6 = Demon, 7 = Demi-Human, 8 = Angel, 9 = Dragon
// * Element:
//        0 = Neutral, 1 = Water, 2 = Earth, 3 = Fire, 4 = Wind,
//        5 = Poison, 6 = Holy, 7 = Dark, 8 = Spirit, 9 = Undead
// * Element lvl: 1 ~ 4
// * Size: 1 - small, 0 - normal, 2 - big
// * Clothes Color: Dye color
// * Color of messages (0xRRGGBB): Ex. 0xFF0000 - red
// * { Aura } : see doc/effect_list.txt
// * { Script Bonus } : Script Bonus for each faction
// * { Faction Aura Bonus } : Script bonus for faction aura around faction leader like guild master's aura 
 
// Faction ID: 1
1,Paradise,Angel,gonryun,0,0,8,6,1,1,1,0x6495ED,{ #240 #418 },{ bonus bInt,3; },{ bonus bInt,30; }
// Faction ID: 2
2,Forest,Elf,payon,0,0,7,0,1,0,2,0x7CFC00,{ #678 #679 #680 },{ bonus bDex,3; },{ bonus bDex,30; }
// Faction ID: 3
3,Hell,Demon,morocc,0,0,1,9,1,2,3,0xFF3030,{ #239 #485 },{ bonus bStr,3; },{ bonus bStr,30; }
// Faction ID: 4
4,Earth,Human,prontera,155,180,7,0,1,0,4,0xEE82EE,{ #200 #201 },{ bonus bLuk,3; },{ bonus bLuk,30; }

 

Faction alliances db:

db/faction_alliance.txt

// Faction ID, Alliance Faction ID{: Alliance Faction ID{:...}}

// Faction ID 1 have alliance with IDs: 2, 3, 4
1,2:3:4
// Faction ID 3 have alliance with ID 4
3,4

 

New atcommands

@setfaction - Set faction

@reloadfactiondb - Reloading faction data bases
@fvfon - FvF on
@fvfoff - FvF off
@home - Return character to Faction home location
@vote - Vote for faction leader
@factionchat - Like @mainchat, but with faction members
@alliancechat - Like @mainchat, but with faction + faction alliance members
@factionmonster - Spawn faction monster
@factionleader - Set faction leader
@factionannounce - Announce to all faction members (Faction Leader feature)

 

New Script commands

*setfaction(<Faction ID>{,<Char ID>});

*setfactionleader(<Faction ID>,<Char ID>);
*relicadd(<Faction ID>,<Item ID>,<Slot>);
*relicgetinfo(<Faction ID>,<Slot>);
*relicactivate(<Faction ID>,<Slot>,<Val>);
*relicdel(<Faction ID>,<Slot>);
*votinginfo(<Faction ID>);
*vote(<Char ID>{,<Amount of Votes>});
*addvotes(<Char ID>{,<Amount of Votes>});
*votingstart({<Faction ID>});
*votingstop({<Faction ID>});
*votingend({<Faction ID>});
*factionmonster(<faction ID>,"<map name>",<x>,<y>,"<name to show>",<mob ID>,<amount>{,"<event label>"});
*areafactionmonster (<faction ID>,"<map name>",<x1>,<y1>,<x2>,<y2>,"<name to show>",<mob ID>,<amount>{,"<event label>"});
*fvfon "<map name>"{,Faction ID};
*fvfoff "<map name>";

New mapflag: fvf ( mf_fvf )

New map cell: nofvf ( cell_nofvf, cell_chknofvf )

Main Features:

  • Faction versus Faction wars allowed only on FvF maps ( Min.lvl -> fvf_min_lvl: 55 )
  • Custom aura effects ( max is 3 by default, but you can increase it )
  • Aura can displaying for unit types in faction.conf: NPCs, Monsters, Pets, etc...( not only for Player )
  • Monster and other can change own base status to status from faction_db.txt ( race, element... )
  • If faction have Undead race or status faction members in this function can heal themselves ( if it allowed in faction_db.txt )
  • NPC shops can sell items to different factions at different prices.
  • Now saving faction leader and relics of each faction.
  • Multi - alliance support.
  • Voting system ( voting for faction leader ).
  • Relics support.
  • Logging Faction chat.

 

Youtube Preview

http://www.youtube.com/watch?v=S7q-ExosLa8

 

Price: FREE PATCH FOR RATHENA REV. 17310

 

/lv attachicon.gifFaction_System_Complete_1.4_rA17310.patch

attachicon.gifFACTION.SQL

 

Old BETA version

Hello, I am interested in this SRC MOD, how much is this anyway?

 

 

I am a Hercules user anyway

Edited by karazu
  • 4 weeks later...
  • 2 months later...
Posted

hy lilith can u help me,i want use your faction system.but when iam install my login server and char server crash can u give me tutorial step by step?

  • 2 months later...
  • 2 months later...
  • 3 months later...
Posted
Index: src/map/battle.h
===================================================================
--- src/map/battle.h	(revision 17310)
+++ src/map/battle.h	(working copy)
@@ -81,10 +81,11 @@
 	BCT_NOPARTY = 0x1b0000, //This should be (~BCT_PARTY&BCT_ALL)
 	BCT_GUILD	= 0x080000,
 	BCT_NOGUILD = 0x170000, //This should be (~BCT_GUILD&BCT_ALL)
-	BCT_ALL     = 0x1f0000,
+	BCT_ALL     = 0x1f0001,
 	BCT_NOONE   = 0x000000,
 	BCT_SELF    = 0x010000,
 	BCT_NEUTRAL = 0x100000,
+	BCT_FACTION = 0x000001, // Complete Faction System [Lilith]

What i found...

/// Battle check target [Skotlex]
enum e_battle_check_target {
	BCT_NOONE		= 0x000000, /// No one
	BCT_SELF		= 0x010000, /// Self
	BCT_ENEMY		= 0x020000, /// Enemy
	BCT_PARTY		= 0x040000, /// Party members
	BCT_GUILDALLY	= 0x080000, /// Only allies, NOT guildmates
	BCT_NEUTRAL		= 0x100000, /// Neutral target
	BCT_SAMEGUILD	= 0x200000, /// Guildmates, No Guild Allies

	BCT_ALL			= 0x3F0000, /// All targets

	BCT_GUILD		= BCT_SAMEGUILD|BCT_GUILDALLY, /// Guild AND Allies (BCT_SAMEGUILD|BCT_GUILDALLY)
	BCT_NOGUILD		= BCT_ALL&~BCT_GUILD, /// Except guildmates
	BCT_NOPARTY		= BCT_ALL&~BCT_PARTY, /// Except party members
	BCT_NOENEMY		= BCT_ALL&~BCT_ENEMY, /// Except enemy
};

BCT_ALL = 0x3F0000, /// All targets

 

What to do? :(

  • 2 months later...
Posted
Index: src/map/battle.h
===================================================================
--- src/map/battle.h	(revision 17310)
+++ src/map/battle.h	(working copy)
@@ -81,10 +81,11 @@
 	BCT_NOPARTY = 0x1b0000, //This should be (~BCT_PARTY&BCT_ALL)
 	BCT_GUILD	= 0x080000,
 	BCT_NOGUILD = 0x170000, //This should be (~BCT_GUILD&BCT_ALL)
-	BCT_ALL     = 0x1f0000,
+	BCT_ALL     = 0x1f0001,
 	BCT_NOONE   = 0x000000,
 	BCT_SELF    = 0x010000,
 	BCT_NEUTRAL = 0x100000,
+	BCT_FACTION = 0x000001, // Complete Faction System [Lilith]

What i found...

/// Battle check target [Skotlex]
enum e_battle_check_target {
	BCT_NOONE		= 0x000000, /// No one
	BCT_SELF		= 0x010000, /// Self
	BCT_ENEMY		= 0x020000, /// Enemy
	BCT_PARTY		= 0x040000, /// Party members
	BCT_GUILDALLY	= 0x080000, /// Only allies, NOT guildmates
	BCT_NEUTRAL		= 0x100000, /// Neutral target
	BCT_SAMEGUILD	= 0x200000, /// Guildmates, No Guild Allies

	BCT_ALL			= 0x3F0000, /// All targets

	BCT_GUILD		= BCT_SAMEGUILD|BCT_GUILDALLY, /// Guild AND Allies (BCT_SAMEGUILD|BCT_GUILDALLY)
	BCT_NOGUILD		= BCT_ALL&~BCT_GUILD, /// Except guildmates
	BCT_NOPARTY		= BCT_ALL&~BCT_PARTY, /// Except party members
	BCT_NOENEMY		= BCT_ALL&~BCT_ENEMY, /// Except enemy
};

BCT_ALL = 0x3F0000, /// All targets

 

What to do? :(

 

 

BCT_ALL = 0x3F0001, /// All targets

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...