Jump to content
  • 0

Party gatekkeper


popld

Question

Paidia na rwtisw, exw psaxei gia kamia tetoia gk alla den brika tpt,

 

AN den iparxei sto search kanw request gia quest(.py h .java) me to opio otan milas se npc kai patas ena koumpi gia teleport (px ena rb-oxi antharas valakas...etc-)(me event id 8a einai an einai .py)

na kanei teleport full party (katw apo 8 atoma na min mporoun na pane) sto rb (ta x,y,z 8a ta balw egw) kai ta atoma na einai apo 84 lvl kai panw, kai oloi na einai ok (dld na min einai kanenas pe8amenos) kai molis pe8ainei to rb  i gk pou 8a iparxei ekei tous stelnei pisw (x,y,x ta bazw egw) kai na teliwsei to quest.Sthn periptwsh pou den mporoun na to skotwsoun i gk pou einai ekei na exei ena koumpi cancel p na tous stelnei pisw kai na healarei to rb.

Ta oipoipa rb 8a ta balw egw......afou 8a katalabw pws ginetai.....

 

Euxaristw.

Link to comment
Share on other sites

13 answers to this question

Recommended Posts

  • 0

Ayto edw to komati toy kodika mporei eykola na prosarmostei se enan gk Python.

 

def checkConditions(player, new):
party = player.getParty()
if not party:
	player.sendPacket(SystemMessage.sendString("You are not currently in a party, so you cannot enter."))
	return False
if party and party.getMemberCount() < 8:
	player.sendPacket(SystemMessage.sendString("You cannot enter because there not enough people in your party. Minimum is 2 people."))
	return False
if party and party.getLeader() != player:
	player.sendPacket(SystemMessage.sendString("Only the party leader can do the team teleport."))
	return False
for partyMember in party.getPartyMembers().toArray():
	if partyMember.getLevel() < 84:
		player.sendPacket(SystemMessage.sendString(partyMember.getName()+"s level is below 78 and cannot enter."))
		return False
	if not Util.checkIfInRange(1000, player, partyMember, True) and new:
		player.sendPacket(SystemMessage.sendString(partyMember.getName()+" is too far away, ask them to come here."))
		return False
return True

 

Pisteyw oti kalyptei ola osa zitises !

 

Credits: l2j-forum

Link to comment
Share on other sites

  • 0

euxaristw file, eimai 60% kalumenos

pws mporw na balw ena boolean na checkarei an iparxei hdh ena pt sto rb

kai na chekarei an o leader exei to item p pefteia po raid(8a to dwsw mesa sto quest) na bgainei allo htm

kapws san

if leader has item coin

  show 123123-00.htm

else

  show 123123-01.htm

 

 

 

(nomizw pws prepei na kanw import to L2Party?)

 

Link to comment
Share on other sites

  • 0

Ayto poy zitas mporei na ginei mono sta Grand bosses kai mono otan exoyn ala3ei contition.

An mi ti allo den 3erw pos na se boi8isw se ayto. To class L2RaidBoss den exei zone restrictions

poy na soy lene an ekei yparxoyn alla atoma.

 

Sxetika me ta imports me rwtas gia to code poy soy edwsa ?

Link to comment
Share on other sites

  • 0

nai gia to party.getLeader() != player: kai ta alla

 

file apla 8elw na ma8w thn python kai ena oloklirwmeno paradeigma 8a diefkolune para polu sto na katalavw pws sindeontai ta condition kai ta loipa.ta zone restriction den ta 8elw afou antharas valakas kai ta loipa ta esbhsa apo ton server, auto p 8elw einai na dw pws douleuei mia tetia gk gt esu me edwses mono ta conditions.

auto p 8elw apo auto einai na einai na dinetai ena quest ston ptleader pou kanei tp olo to party kai opws ena (eida pws ginetai, epsaxa sto quest fakelo) aplo quest se onkill event to APLO (to tonizw) raid boss pou to exw customarei na dinetai ston party leader otan skotwsoun to rb. Kai me auto to item na to pernei i gk p brisketai ekei kai na tous paei pisw, alliws an den exei to item na bgainei allo html pou na tous paei pisw kai na healarei to rb (nomizw to heal mporw na to kanw egw gt pira to init apo buffer, apla na me peis p na to balw).

Kai telos na pigainei ena mono party ka8e fora sto rb, dld na iparxei ena public boolean pou na chekarei an exei bei kapio pt sto raid boss.

 

An den mporeis na to kaneis pes m apo p mporw na zitisw voitheia, gt to maxcheats sta python/jython/java scripts den einai polu aneptigmeno.

Link to comment
Share on other sites

  • 0

Poy tha paei tha petyxo kai enen fysiologiko anthropo edw mesa .... :P

Loipon pame apo thn arxh... Kat arxhn koita ti grafeis giati exeis mple3ei ta mpoytia soy!

Les otas SKOTOSOYN to RB na toys dinei ena item (polly eykolo apla to bazeis sto droplist) kai me ayto

to item na to dinoyn sthn GK (Tote giati na toys to petaei ? Les kai den mporoyn na kanoyn soe apla ?)

kai an den ths to dwsoyn h gk na kanei heal to pethameno boss !!!

 

File moy oxi den 3erw na to kanw ayto sorry... Kallh tyxh !

Link to comment
Share on other sites

  • 0

gia na ta xemperdepsoume, gt alla lew alla katalaves:ta lew teleutaia fora kai ka8ara

Iparxei 1 pt 8 atoma oloi 84lvl kai panw kai kanei to quest o leader. Otan ginei to event (on event = 0) na 3ekinaei to quest kai to pt na paei se ena sigekrimeno meros.Sto meros auto iparxei ena mod (oti nane, arkei na einai mob, to id 8a to ka8orisw egw esu apla bale "EnterMobID_HERE") 8a iparxei ena public boolean pou na chekarei an ginetai auto to quest apo allo pt.Telos me thn GK apo town.

Otan paei to pt sto meros auto 8a iparxei i idia pou an ths miliseis 8a bgalei allo html (efoson o pt leader 8a exei condition 1 an 8imamai kala)

kai sto event pou 8a patisei o pt leader (to link dld gia na figei pisw) na chekarei an to rb einai zwntano, na to healarei an exei faei tuxon dmg kai an tous paei pisw, kai an einai nekro apla na tous paei pisw kai na teliwsei to quest kai to boolean na 3anaginei true wste na mporei na mpei allo pt argotera.

 

Auto me to item p eipa itan mono kai mono na chekarei an to rb einai zwntano i oxi se periptwsh p den ginetai kateu8eian.O logos p 8a healaretai to rb otan den to skotwnoun eiani gt to epomeno party 8a paei kai 8a 3ekinisei na baraei to rb apo kamia 50-60% life.

Link to comment
Share on other sites

  • 0

Loipon gia na ta 3emperdepsoyme opos les :P

Proton ayto poy zitas einai ena plhres paketo me kapio event kai oxi boi8eia.

Deyteron gia na exei noima olo ayto poy les prepei na yparxei INSTANT zone.

To instant zone to anaferw giati den yparxei tropos na pas as poyme kapion e3w apo

to hunder vilage kai na zitas contition perioxhs... Enoo na 3ereis oti den einai allos mesa

kai na mhn kaneis tp an yparxei. Kai afeteroy to pio aplo prama na theleis einai na mhn

asxolitheis me thn gk kai na kaneis ena aplo soe. Opote edw yparxei bug xoris zone !

Kata triton yparxei etoimo event me instant poy na kanei ayth thn doyleia !

Apla mporeis na ala3eis to zone (thn perioxh enoo) kai na to pas opoy theleis esy !

To event einai edw http://www.maxcheaters.com/forum/index.php?topic=136818.0

 

Elpizw na ftasame sto epithimito apotelesma :P

Link to comment
Share on other sites

  • 0

file request kanw. ane imai se la8os topic pes kapion ta to kanei move. Egw to mono p zitaw einai ena init.py p na s kanei teleport to party se ena meros (x,y,z) kai na iparxei i idia gk ekei p na se paei pisw. dld den exeis tis gnwseis na to kaneis?

Efoson den 3erw python den 3erw na kanw kai modify sta metra m, alla otan dw to paradeigma 8a katalavw pws domeitai ena quest me python, gt katalavainw mono me swsta paradeigmata.

 

thn gk 8a thn balw egw sto meros.

Link to comment
Share on other sites

  • 0

ma den einai auto p zitaw, kai den katalavainw tpt. APLA ftiaxe ena aplo quest kai dwse m to code, ta htm egw 8a ta balw kai ti 8a lene mesa.

 

EDIT:GIA NA KATALAVEIS GT APLA DEN MPORW NA TO KANW 8A SE PW ENA TRANO PARADEIGMA

Apo code 3erw to vJass ths Blizzard p einai gia Warcraft3 opws ta maps tou dota.kai eimai expert

Ena paidi ekane request gia ena spell (dld ena skill) pou na roufaei hp apo mia mesaia se mege8os perioxh p kanei target.

Tou edixa xilia etoima spell kai me leei an dne me dwseis auto p 8elw akribw sden 8a katalavw tpt. Etsi ka8isa kai to egrapsa kai den ton epiza 10 sinexomena post

scope Blood initializer Init
//This trigger was for posting it in the-helper forum so that's why it has many globals
   globals
       private constant integer ABIL_ID        = 'Bloo'   //as named is the raw code of the casted ability
       private constant integer Hprate         = 20       //That is the rate of the damage done for every "rate" seconds 
       private constant integer rate2          = 5        //Sets the bonus hp for  every level with base the doublerate integer
       private constant integer Doublerate     = 20       //That is the base maxhp percent function that checks the % of the unit's maxhp to double the rate
       private constant integer limitdistance  = 800      // This is the base distance limit of unit and the target point                          
       private constant integer distance2      = 100      //And that is the upgraded distance limit e.g TrPS lvl 2 limitdistance=1800+2*200
       private constant integer range          = 170      //This sets the base range of the area that the heart damages
       private constant integer range2         = 20       //And this upgrades the range depending the ability's level
       private constant real Timeleft          = 6        //That is the time that no unit passes by the area and ends the ability
       private constant integer percentdrop    = 2        //This is the number that drops the damage done to the targets.The value is percent 
       private constant integer AbsLim         = 600      //This is the limit of the amount that can be sent back to hero
       private constant string DamageEffect    = "Objects\\Spawnmodels\\Human\\HumanBlood\\HumanBloodFootman.mdl" 
       private constant string Healeffect      = "Abilities\\Spells\\Undead\\VampiricAura\\VampiricAuraTarget.mdl"
       private constant string chest           = "chest"
       private constant string origin          = "origin"
       private real array rate                  // That is the rate of the "Hprate" (The rate arrays set is in Init Function)
       private conditionfunc cf              //Shhhhh! Its a secret!
       private unit Caster
       private real ngu
   endglobals
//--------------------------Here we Damage the units int he group we picked--------------------------\\   
   private function Damage takes nothing returns nothing
       call AbilityDmg_damage(Caster, GetEnumUnit(), ngu)
       call DestroyEffect(AddSpecialEffectTarget( DamageEffect, GetEnumUnit(), chest))
   endfunction
//----------------------Here we get the conditions that the units must have to get damaged----------------------\\     
   private function PickCond takes nothing returns boolean
       return GetUnitState(GetFilterUnit(), UNIT_STATE_LIFE) > 0 and IsUnitType(GetFilterUnit(), UNIT_TYPE_MAGIC_IMMUNE) != true and IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(GetTriggerUnit())) == true
   endfunction
//----------------------Here is the condition that checkes the raw code of the ability we cast--------------------\\
   private function Cond takes nothing returns boolean
       return GetSpellAbilityId() == ABIL_ID
   endfunction
 //----------------------Here is the main action----------------------\\        
   private function Act takes nothing returns nothing
       local integer Gnum
       local real percent
       local real Rate
       local real c_range
       local real time = 0
       local real Blood = 0
       local unit caster = GetTriggerUnit()
       local real x = GetSpellTargetX()
       local real y = GetSpellTargetY()
       local group absorbed = CreateGroup()
       local integer lvl = GetUnitAbilityLevel(caster, ABIL_ID)
       local real ratex2 = Hprate+lvl*rate2
       local real sacrificial = GetUnitState(caster, UNIT_STATE_LIFE)-GetUnitState(caster, UNIT_STATE_LIFE)*(0.04+0.01*lvl)
       local real Range = range+lvl*range2
       local real dist = limitdistance+lvl*distance2
       call SetUnitState(caster, UNIT_STATE_LIFE, sacrificial)
       
       loop
           set c_range = SquareRoot((GetUnitX(caster) - x) * (GetUnitX(caster) - x) + (GetUnitY(caster) - y) * (GetUnitY(caster) - y))
           exitwhen Blood >= AbsLim or c_range >= dist or time >= Timeleft
           set percent = GetUnitStatePercent( caster, UNIT_STATE_LIFE, UNIT_STATE_MAX_LIFE)
           if percent < ratex2 then
           set Rate = rate[lvl]/2
           else
           set Rate = rate[lvl]
           endif
           set Caster = caster
           call GroupEnumUnitsInRange(absorbed, x, y, range, cf)
           set Gnum = CountUnitsInGroup(absorbed)
           if FirstOfGroup(absorbed) != null then
               set ngu = Hprate*(100-(Gnum-1)*percentdrop)/100
               call ForGroup(absorbed, function Damage)
               set Blood = Blood+ngu*Gnum
               set time = 0
           else
           set time = time + Rate
           endif
           call TriggerSleepAction(Rate)
       endloop
       if Blood >= AbsLim then
       call SetUnitState(caster, UNIT_STATE_LIFE, GetUnitState(caster, UNIT_STATE_LIFE)+AbsLim)
       else
       call SetUnitState(caster, UNIT_STATE_LIFE, GetUnitState(caster, UNIT_STATE_LIFE)+Blood)
       endif
       call DestroyEffect(AddSpecialEffectTarget( Healeffect, caster, origin))
       call GroupClear(absorbed)
       call DestroyGroup(absorbed)
       set absorbed = null
       set caster = null
   endfunction
//----------------------Here is the end of the main action----------------------\\        

   private function Init takes nothing returns nothing
       local trigger trig = CreateTrigger( )
       call TriggerRegisterAnyUnitEventBJ(trig, EVENT_PLAYER_UNIT_SPELL_EFFECT )
       call TriggerAddCondition(trig, Condition(function Cond))
       call TriggerAddAction(trig, function Act)
       set cf = Condition(function PickCond)
       set rate[1] = 0.5
       set rate[2] = 0.3
       set rate[3] = 0.2
       set rate[4] = 0.12
   endfunction
endscope

to code mesa exei ta panda ola. Oti configure 8elei, ti kanei i ka8e leitourgeia (function) kai me eipe euxaristw katalava apolutws pws douleuw magies sthn vJass glwssa programmatismou.Etsi 8elw kai egw ena quest se python an den mporeis pes DEN MPORW h rwta kana moderator i kana kalo member an 3erei python kai pws kanei ena quest.

Link to comment
Share on other sites

  • 0

File moy sorry den mporw na se boi8isw an kai prospa8isa !

An den mporeis na katalabeis apo ayto to script python poy soy esteila kai me osa soy

exw pei sorry apla den mporw na kanw kati allo !

Den gnwrizw kapion poy tha mporoyse na se boi8isei edw kai oyte kapoy aloy !

 

Kalh tyxh !

 

PS: ap oti blepw sto code poy exeis balei exei constant ! Aporo pos mporeis na katanoiseis eykola ta constant kai oxi ena aplo python script !!

Link to comment
Share on other sites

  • 0

για να κανεις εναν σερβερ με τετοια features πρεπει

#Να εχεις την απαραιτητη γνωση Java

#Να πληρωσεις καποιον

αυτα που ζητας ειναι πολυ εξεζητημενα για να τα βρεις τζαμπα

Link to comment
Share on other sites

  • 0

finito pisteuw pws exeis dikio, gt apo to na ka8otan kai na me edeixne as me eftiaxne ena pio aplo paradeigma apo auto p i8ela isa isa na katalavw pws domeitai ena quest. Apo ekei kai kai pera apla 8a peiramatizomoun me to quest efoson 8a kalipte ta basika.

Kai me to vJass code p edwsa dleogr sto forum ekeino exei xilia 2 paradeigmata pws na ma8eis ekeinh thn glwssa gia to sigekrimeno game kai oxi apla mia 3erh java i python.Ekei se lene thn ka8e leitourgia kai einai ola tzampe.Gia auto eipa na dw an mporw na kanw kati kai me to l2 p m aresei kai oxi mono me to Warcraft3

Link to comment
Share on other sites

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
Answer this question...

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



×
×
  • 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