프메 만렙확장 스크립트
GameConstants.java 쪽에서
private static final int[] exp = { // 이거검색 하고 모두지우고 이걸로 집어넣으세요
1,
15,
34,
57,
92,
135,
372,
560,
840,
1242,
1242,
1242,
1242,
1242,
1242,
1490,
1788,
2146,
2575,
3090,
3708,
4450,
5340,
6408,
7690,
9228,
11074,
13289,
15947,
19136,
19136,
19136,
19136,
19136,
19136,
22963,
27556,
33067,
39681,
47616,
51425,
55539,
59582,
64781,
69963,
75560,
81605,
88133,
95184,
102799,
111023,
119905,
129497,
139857,
151046,
163130,
176180,
190274,
205496,
221936,
239691,
258866,
279575,
301941,
326096,
352184,
380359,
410788,
443651,
479143,
479143,
479143,
479143,
479143,
479143,
512683,
548571,
586971,
628059,
672024,
719065,
769400,
823258,
880886,
942548,
1008526,
1079123,
1154662,
1235488,
1321972,
1414510,
1513526,
1619473,
1732836,
1854135,
1983924,
2122799,
2271395,
2430393,
2600520,
2782557, //100
2977336, //101
3185749, //102
3408752, //103
3647365,
3902680, //105
4175868,
4468179,
4780954,
5115618,
5473711, //110
5856871,
6266852,
6705531,
7174922,
7677167, //115
8214569,
8789589,
9404860,
10063200,
10063200, //120
10063200,
10063200,
10063200,
10063200,
10767624, //125
11521352,
12327847,
13190803,
14114152,
15102142, //130
16159301,
17290443,
18500774,
19795828,
21181536, //135
22664244,
24250741,
25948292,
27764673,
29708216, //140
31787774,
34012918,
36393823,
38941390,
41667288, //145
44583998,
47704878,
51044219,
54617315,
58440527, //150
62531364,
66908559,
71592158,
76603609,
81965862, //155
87703472,
93842715,
100411706,
107440525,
113887018, //160
120720239,
127963453,
135641260,
143779736,
152406520, //165
161550911,
171243966,
181518604,
192409720,
203954303, //170
216191561,
229163055,
242912838,
257487608,
272936864, //175
289313076,
306671861,
325072173,
344576503,
365251093, //180
387166159,
410396129,
435019897,
461121091,
488788356, //185
518115657,
549202596,
582154752,
617084037,
654109079, //190
693355624,
734956961,
779054379,
825797642,
875345501, //195
927866231,
983538205,
1042550497,
1205103527,//199
1225103527,//200
1235103527,//201
1245103527,//202
1255103527,//203
1265103527,//204
1275103527,//205
1285103527,//206
1295103527,//207
1305103527,
1315103527,
1325103527,//210
1335103527,
1345103527,
1355103527,
1365103527,
1375103527,
1385103527,
1395103527,
1405103527,
1415103527,
1425103527,//220
1435103527,
1445103527,
1555103527,
1565103527,
1575103527,
1585103527,
1595103527,
1605103527,
1615103527,
1625103527,//230
1635103527,
1645103527,
1655103527,
1665103527,
1665103527,
1685103527,
1695103527,
1715103527,
1725103527,
1735103527,//240
1745103527,
1755103527,
1765103527,
1775103527,
1785103527,
1795103527,
1805103527,
1835103527,
1855103527,
1955103527,//250
1985103527,
1995103527,
2005103527,
2015103527,
2105103527,
2147103527, 0}; //199
그리고 TopPlayer.java( 탑펙 기준 TopPlayer) 부분에서
if (level == 200 && !isGM()) { // 이거 검색후 아래와같이 변경
final StringBuilder sb = new StringBuilder("[축하] ");
final IItem medal = getInventory(TopInventoryType.EQUIPPED).getItem((byte) -46);
if (medal != null) { // Medal
sb.append("<");
sb.append(ItemInformation.getInstance().getName(medal.getItemId()));
sb.append("> ");
}
InventoryManipulator.addById(client, 2430479, (short) 1);
sb.append(getName());
sb.append(" 님이 레벨 200을 달성했습니다! 모두 축하해 주세요.");
WorldBroadcasting.broadcastMessage(MainPacketCreator.serverNotice(6, sb.toString()).getBytes());
}
-----------------------------------------
그리고 TopPlayer.java 에서
public void gainExp(final int total, final boolean show, final boolean inChat, final boolean white) {// 검색후 이걸로 변경
if (level == 200 || (GameConstants.isKOC(job) && level == 120)) {
final int needed = GameConstants.getExpNeededForLevel(level);
if (exp + total > needed) {
setExp(needed);
} else {
exp += total;
}
} else {
if (exp + total >= GameConstants.getExpNeededForLevel(level)) {
exp += total;
levelUp();final int needed = GameConstants.getExpNeededForLevel(level);
if (exp > needed) {
setExp(needed);
}
} else {
exp += total;
}
}
if (total != 0) {
if (exp < 0) { // After adding, and negative
if (total > 0) {
setExp(GameConstants.getExpNeededForLevel(level));
} else if (total < 0) {
setExp(0);
}
}
updateSingleStat(PlayerStat.EXP, getExp());
if (show) { // still show the expgain even if it's not there
client.getSession().write(MainPacketCreator.GainEXP_Others(total, inChat, white));
}
}
}
--------------------------------------
그리고 script - Item 에
아래 스크립트 추가
파일이름 : consume_2430479
확장자 : js
저장법 : 메모장열고 소스 복사해서 붙히고 확장자는 모든파일로바꾸고 파일이름에 consume_2430479.js
*/var status = -1;
function start() {
status = -1;
action (1, 0, 0);
}function action(mode, type, selection) {
if (mode < 0) {
cm.dispose();
return;
} else {
if (mode == 1)
status++;
else
status--;
if (status == 0) {
if (cm.getPlayer().getLevel() == 200) {
cm.sendYesNo("이 물약을 사용할시 최대레벨이 256으로 해제됩니다. 사용하시겠습니까?");
} else {
cm.sendOk("당신은 레벨이 200이 아니므로 사용할수 없습니다");
cm.dispose();
}
} else if (status == 1) {
cm.sendOk("최대 레벨이 확장되었습니다.");
cm.getPlayer().levelUp();
cm.gainItem(2430479, -1);
cm.dispose();
}
}
}
*-------------------------------------
200레벨되면 저기 스크립트의 물약을 자동으로 주니까 그거빨면 자동으로 만렙해제됨
추가적으로 수정해야되는건
200렙을 축하한다는 메세지 출력부분에 TopInventoryType.EQUIPPED << 탑풱기준으로 자기풱으로 변경하세요.
if (level == 200 || (GameConstants.isKOC(job) && level == 120)) { //검색해주시구요
이부분에 색갈들어간곳만 수정하시고 저장하면 확장성공!
if (!(level > 200)) {
if (level == 200 || (GameConstants.isKOC(job) && level == 120)) {빨간색 시그너스를제외한 모든직업 최대만렙
초록색 시그너스만렙을 표시함

늅늅 님의 최근 댓글