[db.c mud.h table.c 기술내용소스] : do_*
[mud.h table.c 기술내용소스] : spell_*
[handler.c, mud.h, BUILD.C] : AFF_*
#실드마법 : handler.c(AFF) mud.h(AFF) act_info.c(L449), fight.c(L1154)
bulid.c(a_flag). mud.h와 bulid.c의 순서가 맞아야 한다.
<아이디어>
1. 연타 체크하는 부분에서 AFF_HASTE 있으면 연타 1 추가
2. 포프=리커버리 : 모든 상태이상 회복. 장님, 독, 체인지섹스, 저주, 플레어,
3. 소환 마법 연구(네크로맨시 및 정령소환) -> 동물 소환, 악마 소환
4. 스트롱홀드 -> 심볼 오브 패럴라이즈
5. 스플리트 -> 소닉 블레이드의 강화판
6. 희생 공격 및 마법 -> 포프:새크리파이스(체력등 1로, 데미지=체력+마나+기력)
7. 어벤저=이글 아이->명중률 급증
8. 존 : 각 레벨별 보통, 선공, 능력2배의 3개존. 레벨 100~900 총 27개존
9. 패러딘 : 페가서스 소환.
10. 저지먼트 소스화.
11. 물건창조마법(91 검색)
12. helical flow = 순간이동 명령이랑 비슷
13. 술제조 = 재료 믹스해서 술 만든다.
14. 노래공격 = 손에 아무것도 없을때 = *2
악기를 쥐고 있을때(DAM_MUSIC 추가가능하면) = *3
무기를 쥐고 있을때 = *1
☆ 비의 정원: 슬립효과
☆ 페르퀸트 : 어웨이크 효과
☆ 늪속의 꽃 : 산, 독 저항률
☆ 천둥과 번개 : 에너지,전기 저항률
☆ 소녀의 기도 : 최대체력 이동력 증가
14-1. 노래 시간 늘리기 : ch->level/25
15. 마법 :
네크로맨서 -> 재생, 라이프드레인, 데스필드, 스테이시스 필드
커스 = 타격률,마법굴림. 다음 주문 = 명중률,방어력.
다음 주문 = 최대체력. 최대마나. 최대이동력
16. 폴리모프 소스
마법사(몬스터변신), 도둑(가면술), 드루이드(동물변신).
17. 줄임말 갯수 늘리기
문제점 :
1. 저항 -가 적용이 되지 않는다. (fight.c) => 저항 줄이는 마법 사용 불가
2. 소울 바인드가 본서버에서 방퍽이 난다.
4. 즉사 효과 연구.
6. 별장
7. 맙한테서 깍체포션.
8. 소닉 블레이드 마이너 다운 및 업그레이드 기술
9. 토마호크 떨구지 않고 던질때마다 데미지
<코딩에 어려움 有>
☆ 저항 감소[smaug] :
[인챈터]
파이어 스웜, 프로스트 스웜, 일렉트닉 스웜. 에너지 스웜,
[네크로맨서]
엘리멘탈 스웜(swarm)
#지역에 따른 데미지 변동! (섹터,네크로맨시 참조)
#데미지 공식에서 방어력 계산부분 찾아보기
#물건플래그! (전용, 아이덴 등)
#선공을 안당하는 마법 case APPLY_ROOMFLAG: return " 방플래그 ";
#돈쓴만큼 데미지 1/100 (do_poison_weapon)
5. 도둑
skills.c do_poison 체크
킬링 머신 : ch->pcdata->mkills
(블러디 카인)
6. NPC 마법
모든 능력치를 10으로 고정시키는 마법 GREATMALISON
타격률, 명중률을 다운시키는 마법 SNAKEEYES
체력, 마나, 기력을 감소시키는 마법 ASTRALTDISTORT
방어력 감소 마법 BRAKESHIELD
저항력 감소 마법 LOWERRESIST
7. 전사
☆ 토마호크 럴커처럼 역데미지
- 속성추가 : 레벨 낮은 악한 맙일 경우 즉사.
☆ 양손무장시 쓸 수 있는 공격기술
☆ 워로드는 평타가 중요!
영주 -> 영지귀환, 영지발전, 영지내 맙에게
void free_fight( CHAR_DATA *ch ) : 버서크 전투 끝날때.
슬래셔 : (무기+타격률)*2, 검장비시*1.5, 3~5회 랜덤공격, 기력 200
토마호크 : 무기+힘*2+행운*행운, 크리티컬성공시*25, 실패시*10, 기력 250
투크로스 : (무기+타격률)*4+힘*힘/30, 3회 공격, 장검*1.2, 기력 300
스마이트 : (무기+타격률)*2+힘*100+무게*무게, 도끼*2, 기력 300
버서크 : 힘=(레벨/20+힘/10+건강/10), 시간=(레벨/30~레벨/25)
플래셔 : (무기+힘*10)*2, 50%크리티컬*1.5, 검*2, 힘100당최대7방, 기력800
실드어택 : 힘*30+방패무게*방패무게, 크리티컬성공*10,실패*2, 홀드효과, 기력150
파이어싱 : 무기+무게*무게/2+타격률+명중률+힘*3, 창장비시 1.3배,
민첩100이상*1.5, 민첩200이상*2, 민첩300이상*3, 민첩400이상*4,
민첩500이상*6, 민첩600이상*8. 기력 200.
디펜시브오라 : 방어력=(레벨/20+힘/2+건강/10), 시간=(레벨/10+힘/5)
투기 : 명중,타격=(레벨/10+힘/2+건강/10+MK/1000), 시간=레벨/10+힘/5
데쓰플래셔 : (무기+타격률+명중률*2)*3+민첩*민첩/35, 어벤저*1.2,
민첩100당 최대6방. 기력 250
소닉블레이드 : (무기*3+민첩*25+행운*행운+건강+현재체력/10+레벨*5)*2,
단검*1.2, 기력소모=최대기력/20.
스카이어택 : (무기+타격률)*2 + (민첩+명중률)*레벨/40, 기력 600
레벨 400*1, 레벨500*1.2, 레벨600*1.4, 레벨900*2,
레벨 1000*4, 레벨1010*5, 레벨1020*6, 레벨1050*9.
봄의왈츠 : (레벨*2+민첩*2)=체력회복, 기력 1000.
초원의바다 : (레벨+민첩*2)=기력회복, 기력 1000.
피닉스의유희 : 불저항=(레벨/100+민첩/50), 시간=(레벨/50+민첩/50)
눈의여왕 : 냉기저항=(레벨/100+민첩/50), 시간=(레벨/50+민첩/50)
나이츠랩소디 : 명중타격=(레벨/10+민첩/5), 시간=(레벨/50+민첩/50)
그레이트노이즈 : (명중률*4+타격률*2)*4 + 민첩*민첩/20
fight.c : 운영 체크 추가, 경치이벤트 추가(체력 444444, 매력/10 배수)
db.c : logf -> log10f, 플래셔, 그레이트노이즈, 홀리워드, 스트롱홀드 코드
mud.h : logf -> log10f, 플래셔, 그레이트노이즈. 홀리워드, 스트롱홀드 코드. AFF
save.c : logf -> log10f
handler.c : AFF
tables.c : 플래셔, 그레이트노이즈, 홀리워드, 스트롱홀드 코드
skills.c : 버서크, 소닉블레이드
weaponskills.c : 실드어택, 토마호크, 투크로스, 데스플래셔, 스카이어택, 스마이트
슬래셔, 플래셔, 그레이트노이즈, 파이어싱, 럴커 기력소모.
바드노래
update.c : 수련치 최고 6개까지(전레벨).
max_add 추가(레벨업시 얻는 기력보너스한도 수정)
AFF = handler.c, mud.h, BUILD.C
#실드마법 : handler.c(AFF) mud.h(AFF) act_info.c(L449), fight.c(L1154)
bulid.c(a_flag). mud.h와 bulid.c의 순서가 맞아야 한다.
2004.07.01
[weaponskills.c]
1. 파이어싱(do_pierce) 수정
2. 바드 노래(초원의 바다[do_grocean], 봄의 왈츠[do_spwaltz],
눈의 여왕[do_snowqn],피닉스의 유희[do_phplay], 나이츠랩소디[do_knightr])
3. 바드 노래 공격스킬 - 그레이트 노이즈 완성(90%),
타격메세지가 조금 미진하나 바로 사용가능.
[mud_comm.c]
mpdamage, mprestore 양을 십만까지 확대.
[act_obj.c]
돈 십억까지 줄 수 있게 수정.
[act_info.c]
방패효과 추가 : 마그마실드, 노바실드, 블리자드실드, 칼날의방벽, 오라, 투기,
빛의방패, 안티매직쉘
[build.c]
(a_flasg) 영향받음 플래그 추가(블리자드실드, 노바실드, 마그마실드, 칼날의방벽
오라,투기,빛의방패,안티매직쉘)
[clans.c]
왕국 설립 레벨 500 이상 변경.
[clespell.c]
홀리워드(do_holyword), 스트롱홀드(do_stronghold) 완성
[db.c]
바드노래등 추가.
[fight.c]
마법방패 사용시 데미지코드(마그마, 노바, 블리자드, 칼날)
[handler.c]
영향받음 플래그 추가(mud.h와 동일)
[mud.h]
최대기술 500개로 변경.
영향받음(AFFECTED_BY) 추가.
바드기술. 성직자마법등.
2004.07.09
[act_info.c] AFF_LIFEVESSEL
[build.c, mud,h, handler.c]
AFF_LIFEVESSEL, AFF_ENERGYDRAIN2, AFF_DEPRESS, AFF_FLARE
[clespell.c]
플레어(추가), -소울바인드(본섭에서 방퍽)
[weaponskills.c]
*디펜시브 오라, *투기, *플러리
[sorspells.c]
라이프베셀(추가), *포스미사일, -에너지드레인, -디프레스
[db.c. mud.h table.c]
do_symbolofsaint, do_sunburst, do_angelicfield, do_sunray
do_firestorm, do_symbolofpain, do_neutralfield, do_chaosword
do_symbolofname,
do_sunbeam, do_holysmite, do_punishment, do_creepdoom,
do_neutralstrike, do_wrathofghost,
1. 포프
저지먼트 : 제한필요, 마나 전부 소비, 못움직이는
<레벨 600, 7서클>
*★ 컨빅션(spell_heavens_fist) : 단일 공격 마법 (600), 성향따라 데미지.
<레벨 700, 8서클>
#★ 칼날의 방벽(AFF_BLADESHIELD)
<레벨 800, 9서클>
#★ 헤븐즈 피스트(do_heavensfist2) : 단일 공격마법(800), 성향
#★ 데몬즈 피스트 : 단일 공격마법
상대가 PC면 데미지 감소하도록 조정
★ 심볼 오브 세인트(do_symbolofsaint) : 전공
<레벨 900, 10서클>
*★ 그레이트 힐링(ch_ret spell_great_healing) : 퍼센트로 회복시켜주는것(900)
*★ 홀리워드(do_holyword) : 전체공격(900)
*★ 스트롱홀드(do_stronghold) : 전체공격 홀드효과(900),
+★ 소울 바인드(1/3언데드 체력 반으로 깍는다. 2/3 데미지, 데미지)
★ 선 버스트(do_sunburst) : 전공
★ 선 빔(do_sunbeam) : 단일, 언데드 1.5배
★ 엔젤릭 필드(do_angelicfield) : 전공, 성향에 따라 타격률 감소, 타격률 증가!
<레벨 1000, 11서클>
★ 선 레이(do_sunray) : 전공, 언데드 데미지 두배.
★ 홀리 스마이트(do_holysmite) : 단일, 지혜/300 당 한대
☆ 서몬 엔젤(do_summonangel)
2. 드루이드 : 상태이상 마법
<레벨 400, 5서클>
#★ 페인풀(ch_ret spell_painful) : 페인 강화 (400:레이오브칠 비교), 타격률 감소
<레벨 500, 6서클>
#★ 디바인 마크(do_divinemark) : 전체 공격 마법. (500:파이어리 플레일)
<레벨 600, 7서클>
#★ 진실의 시야(spell_smaug) (기술:true sight참조) : 투명감지, 은닉감지 (500)
<레벨 700, 8서클>
#★ 디바인 크로스(do_divinecross) : 단일 공격 마법. (700:썬더스톰). 프로핏용
#★ 플레어 : 저주 강화 마법
☆ 치킨 리버 : 힘 감소
☆ 소울 오브 울프(민첩) : 늑대의 민첩
★ 파이어 스톰 : 전공
<레벨 800, 9서클>
#★ 디바인 스톰(do_divinestorm) : 전체 공격 마법. (800:미티어 스웜). 프로핏용
#★ 윈드 워크(자신:부유,비행)
★ 퍼니쉬먼트 : 단일.
☆ 슬로우포크 : 민첩 감소
☆ 소울 오브 키튼(매력) : 새끼고양이의 매력
<레벨 900, 10서클>
★ 뉴트럴 필드 : 전공, 성향에 따라 방어력 감소, 방어력 증가!
★ 심볼 오브 페인 : 전공
★ 카오스 워드 : 전공
★ 크리프 둠 : 단일
☆ 빈헤드 : 지식, 지혜 감소
☆ 스피릿 오브 타이거(힘) : 호랑이의 힘
<레벨 1000, 11서클>
★ 심볼 오브 네임 : 자신의 이름을 새겨 적을 공격하는 전체 공격 마법.
★ 뉴트럴 스트라이크 : 단일, 성향
★ 원혼의 분노 -> mk당함 + wis + level : 단일
☆ 소울 오브 폭스(지혜) : 여우의 지혜
<추가한 AFF>
AFF_ANGELICFIELD, AFF_NEUTRALFIELD,
AFF_CHICKENLIVER, AFF_SLOWPOKE, AFF_BEANHEAD,
AFF_SKULLSWIRL, AFF_FIREFIELD, AFF_GLACIALFIELD,
AFF_GIGANTICBRAKE, AFF_BATTLESHIELD, AFF_GREATMALISON
AFF_SNAKEEYES, AFF_ASTRALDISTORT
AFF_BRAKESHIELD, AFF_LOWERFIRE, AFF_LOWERCOLD,
AFF_LOWERELEC, AFF_LOWERACID, AFF_LOWERPOISON,
AFF_LOWERENERGY, AFF_LOWERDRAIN, AFF_LOWERNONMAGIC,
AFF_LOWERCRUSH, AFF_LOWERSLASH, AFF_LOWERPIERCE,
AFF_LOWERMAGIC, AFF_LOWERALLRE, AFF_HELLGATE, AFF_GIAS,
AFF_DIAMONDDUST, AFF_NINEHELL, AFF_ABYSSGATE, AFF_ALIENBEAST
<추가한 마법코드>
do_fingerofdeath, do_skullswirl, do_spectralhand
do_powerwordkill, do_depress, do_meteorstrom,
do_symbolofdeath
spell_gias, spell_diamonddust,
spell_hellgate, spell_ninehell, spell_abyssgate, spell_alienbeast
do_lavafield, do_deathcloud, do_sulfuricstorm,
do_glacialfield, do_giganticbrake, do_elementalstrike
do_prismaticspray
spell_battleshield, spell_duplicate,
spell_greatmalison, spell_snakeeyes, spell_astraldistort
spell_brakeshield, spell_lowermagic, spell_lowernonmagic
spell_recovery
- : 코딩 불완전
+ : 코딩 완성
* : 코드 추가완료 및 베타테스트
4. 위저드
<기존 수정>
베놈 : 진짜 독효과
리버스 그래비티 : 스턴효과
프리징 스피어 : 명중률 감소 효과
<레벨 600, 7서클>
+★ 포스 미사일(do_forcemissile) : 단일 공격 마법, 매직 미사일 강화
<레벨 700, 8서클>
☆ 패밀리어
<레벨 800, 9서클, 마나 >
#★ 포스 배리어(spell_smaug) : 프로텍션 강화.
☆ 향상된 파이어볼(do_improvedfireball) : 단일, 타격률 감소
146
<레벨 900, 10서클, 마나 100000>
*★ 라바 필드(do_lavafield) : 전공, 타격률 감소
*★ 데스 클라우드 : 전공, 독효과
*★ 설퍼릭 스톰 : 전공,
☆ 프리스매틱 스프레이 : 7가지 각기 다른 효과. 단일 공격 마법.
☆ 듀플리케이트 : 자기복제마법
<레벨 1000, 11서클, 마나 250000>
*★ 그레이셜 필드 : 전공, 명중률 감소
*★ 기간틱 브레이크 : 전공, 방어력 감소
*★ 엘리멘탈 스트라이크 : 단일
☆ 배틀 실드(spell_battleshield) : 전투 중 방어마법
3. 네크로맨서
★ 스킨 시리즈 수정
<레벨 700, 8서클>
★ 파이어 레지스턴스(spell_smaug)
★ 아이스 레지스턴스(spell_smaug)
<레벨 800, 9서클, 6.5, >
+★ 핑거 오브 데스 : 단일 공격 마법, 즉사효과(raw_kill 참조)
- 언데드는 면역. 언데드 아닐때 레벨 높으면 dam/=1.5,
레벨 낮으면 dam*=1.
☆ 헬 게이트 : 소환마법
☆ 레이즈 데드 : 애니메이트 데드의 강화판
#★ 에너지드레인(체력흡수-회복),
#★ 최대체력, 마나 증가 : 라이프 베셀.
#★ 블리자드실드, 플레임실드, 노바실드. 디스펠 실드(하위 실드 제거)
<레벨 900, 10서클, 7.5, 100000>
☆ 치명적인 저주의 상징 : 전공, 저주효과
+★ 디프레스 : 단일, 타격률 저하
+★ 스컬즈 스월 : 전공, 방어력 저하
☆ 나인헬 : 소환마법
☆ 인탱글(spell_entangle) : 홀드 효과(짧다)
#★ 프리스매틱 실드(불, 냉기, 전기, 에너지) level/50 + int/20, int
<레벨 1000, 11서클, 9.5, 250000>
☆ 다이아몬드 더스트 : 실드
☆ 기아스 : 능력치 감소
+★ 메테오 스트라이크(do_meteorstorm) : 단일
+★ 스펙트럴 핸드 : 단일공격마법
+★ 심볼 오브 데스 : 전공
☆ 파워 워드 킬 :
전체 공격 마법. 즉사효과(raw_kill 참조, 턴언데드 참조)
자기렙의 1/3에 해당하는 맙을 일정확률로 죽이기
자기렙의 2/3에 해당하는 맙에게 치명적인 데미지, 즉사의 찬스 존재
자기렙의 2/3부터의 맙에게는 일반적인 데미지, 치명적인 데미지 찬스 존재
☆ 어비스 게이트 : 소환
☆ 에일리언 비스트 : 소환
총 4군데, db.c=2, mud.h=1, magic.c=1
case AFF_INVISIBLE: af.type = gsn_invis; break;
case AFF_HOLD: af.type = gsn_hold; break;
case AFF_FAERIE_FIRE: af.type = gsn_faeriefire; break;
case AFF_CURSE : af.type = gsn_curse; break;
case AFF_PARALYSIS : af.type = gsn_paralysis; break;
case AFF_FLARE : af.type = gsn_flare; break;
case AFF_CHICKENLIVER : af.type = gsn_chickenliver; break;
case AFF_SLOWPOKE : af.type = gsn_slowpoke; break;
case AFF_BEANHEAD : af.type = gsn_beanhead; break;
case AFF_GREATMALISON : af.type = gsn_greatmalison; break;
case AFF_SNAKEEYES : af.type = gsn_snakeeyes; break;
case AFF_ASTRALDISTORT : af.type = gsn_astraldistort; break;
case AFF_BRAKESHIELD : af.type = gsn_brakeshield; break;
case AFF_LOWERFIRE : af.type = gsn_lowerfire; break;
case AFF_LOWERCOLD : af.type = gsn_lowercold; break;
case AFF_LOWERELEC : af.type = gsn_lowerelec; break;
case AFF_LOWERACID : af.type = gsn_loweracid; break;
case AFF_LOWERPOISON : af.type = gsn_lowerpoison; break;
case AFF_LOWERENERGY : af.type = gsn_lowerenergy; break;
case AFF_LOWERDRAIN : af.type = gsn_lowerdrain; break;
case AFF_LOWERNONMAGIC : af.type = gsn_lowernonmagic; break;
case AFF_LOWERCRUSH : af.type = gsn_lowercrush; break;
case AFF_LOWERSLASH : af.type = gsn_lowerslash; break;
case AFF_LOWERPIERCE : af.type = gsn_lowerpierce; break;
case AFF_LOWERMAGIC : af.type = gsn_lowermagic; break;
case AFF_LOWERALLRE : af.type = gsn_lowerallre; break;
case AFF_GIAS : af.type = gsn_gias; break;
affect_strip( victim, gsn_hold );
affect_strip( victim, gsn_faeriefire );
affect_strip( victim, gsn_curse );
affect_strip( victim, gsn_paralysis );
affect_strip( victim, gsn_flare );
affect_strip( victim, gsn_chickenliver );
affect_strip( victim, gsn_slowpoke );
affect_strip( victim, gsn_beanhead );
affect_strip( victim, gsn_greatmalison );
affect_strip( victim, gsn_snakeeyes );
affect_strip( victim, gsn_astraldistort );
affect_strip( victim, gsn_brakeshield );
affect_strip( victim, gsn_lowerfire );
affect_strip( victim, gsn_lowercold );
affect_strip( victim, gsn_lowerelec );
affect_strip( victim, gsn_loweracid );
affect_strip( victim, gsn_lowerpoison );
affect_strip( victim, gsn_lowerenergy );
affect_strip( victim, gsn_lowerdrain );
affect_strip( victim, gsn_lowernonmagic );
affect_strip( victim, gsn_lowercrush );
affect_strip( victim, gsn_lowerslash );
affect_strip( victim, gsn_lowerpierce );
affect_strip( victim, gsn_lowermagic );
affect_strip( victim, gsn_lowerallre );
affect_strip( victim, gsn_gias );
ASSIGN_GSN( gsn_hold, "홀드") );
ASSIGN_GSN( gsn_faeriefire, "페어리파이어") );
ASSIGN_GSN( gsn_curse, "저주") );
ASSIGN_GSN( gsn_paralysis, "마비") );
ASSIGN_GSN( gsn_flare, "플레어") );
ASSIGN_GSN( gsn_chickenliver, "치킨리버") );
ASSIGN_GSN( gsn_slowpoke, "슬로우포크") );
ASSIGN_GSN( gsn_beanhead, "빈헤드") );
ASSIGN_GSN( gsn_greatmalison, "그레이트맬리슨") );
ASSIGN_GSN( gsn_snakeeyes, "스네이크아이즈") );
ASSIGN_GSN( gsn_astraldistort, "아스트랄디스토트") );
ASSIGN_GSN( gsn_brakeshield, "브레이크실드") );
ASSIGN_GSN( gsn_lowerfire, "불저항감소") );
ASSIGN_GSN( gsn_lowercold, "냉기저항감소") );
ASSIGN_GSN( gsn_lowerelec, "전기저항감소") );
ASSIGN_GSN( gsn_loweracid, "산저항감소") );
ASSIGN_GSN( gsn_lowerpoison, "독저항감소") );
ASSIGN_GSN( gsn_lowerenergy, "에너지저항감소") );
ASSIGN_GSN( gsn_lowerdrain, "드레인저항감소") );
ASSIGN_GSN( gsn_lowernonmagic, "비마법저항감소") );
ASSIGN_GSN( gsn_lowercrush, "찍기저항감소") );
ASSIGN_GSN( gsn_lowerslash, "베기저항감소") );
ASSIGN_GSN( gsn_lowerpierce, "찌르기저항감소") );
ASSIGN_GSN( gsn_lowermagic, "마법저항감소") );
ASSIGN_GSN( gsn_lowerallre, "모든저항감소") );
ASSIGN_GSN( gsn_gias, "기아스") );
|