이전 글 :: 다음 글 |
글 쓴이 |
메세지 내용 |
Ancient
가입일: 2006년 05월 11일
게시물: 56
|
글 작성시간 : 2006-12-11 월 8:32 pm 제목: 스크립 제작 |
|
|
릴레이 참여해 보실분?
의도는 게시판의 활발한 참여와 스크립 생성과정등으로 인해 처음 접하는분들도 순차적인 배움을 얻을 수 있지 않을까 합니다.
난 처음이야 몰라~하지마시고 Hue = X; 등 아는데 스크립에 없다 하면 바로 참여하시어 Hue = 0x4F2; 등으로 하시면 됩니다.
자신의 노하우가 공개될까.. 하지마시고 가능한 범위내에서 참여해주시면 됩니다.(이글을 쓰는순간 나부터 뜨끔해지는게 느껴지네요 --)
이로써 스크립이 어떻게/어떤순으로/어떤식으로 변경되어 어떤 기능을 하게되는지 차차~배워 나가실 수 있을듯합니다.
초급사용자와 고급사용자등 모두 참여하기 위해서 아이템 종류로,
특정인이 무기,방어구,악세사리,기타아이템 등으로 하나의 아주 간단한 소스를 제안합니다.
그러면 게시물을 확인한 분중에 참여해볼분이 그 간단한 소스에 각각의 기능 한가지씩만을 추가하는겁니다.
일단, 스크립으로 예제를 듭니다.
또한, Other & etc.. 게시판에 아래의 예제를 올려놔 보겠습니다.
[제안할 경우 예제](카타나소드의 소스를 가져다가 이름만 변경하였습니다.)
* 스크립 이름 : Sword.cs
* 아이템 이름 : 검
* 아이템 성격 : 카타나의 모양을 가진 일반적인 검
코드 :
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x13FF, 0x13FE )]
public class Sword : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.DoubleStrike; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.ArmorIgnore; } }
public override int AosStrengthReq{ get{ return 25; } }
public override int AosMinDamage{ get{ return 11; } }
public override int AosMaxDamage{ get{ return 13; } }
public override int AosSpeed{ get{ return 46; } }
public override int OldStrengthReq{ get{ return 10; } }
public override int OldMinDamage{ get{ return 5; } }
public override int OldMaxDamage{ get{ return 26; } }
public override int OldSpeed{ get{ return 46; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x23A; } }
public override int InitMinHits{ get{ return 31; } }
public override int InitMaxHits{ get{ return 90; } }
[Constructable]
public Sword() : base( 0x13FF )
{
Weight = 6.0;
Name = "검";
}
public Sword( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}
그럼 다음 참여할분이 소스를 가져다가 한가지의 기능만을 추가합니다.
[참여할 경우 예제]
코드 :
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x13FF, 0x13FE )]
public class Sword : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.DoubleStrike; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.ArmorIgnore; } }
public override int AosStrengthReq{ get{ return 25; } }
public override int AosMinDamage{ get{ return 11; } }
public override int AosMaxDamage{ get{ return 13; } }
public override int AosSpeed{ get{ return 46; } }
public override int OldStrengthReq{ get{ return 10; } }
public override int OldMinDamage{ get{ return 5; } }
public override int OldMaxDamage{ get{ return 26; } }
public override int OldSpeed{ get{ return 46; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x23A; } }
public override int InitMinHits{ get{ return 31; } }
public override int InitMaxHits{ get{ return 90; } }
[Constructable]
public Sword() : base( 0x13FF )
{
Weight = 6.0;
Name = "검";
Hue = 1152;
}
public Sword( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}
Hue = 1152; 를 추가하였습니다. 이런식으로 하면 되겠죠.
하지만 참여하는 분들 자신의 취향이 있기때문에 불필요한 변형된코드의 반복등 문제가 생길 수 있습니다. 그래서 몇가지 룰을 정하여 진행하면 가능할듯합니다.
[소스를 제안하는 사람의 규칙]
* 소스가 제안된 게시물에는 일체 장난식이나 불필요한 리플글이 등록되어서는 안됩니다.
01. 스크립은 서버에 영향을 주어서는 안됩니다.
= 소스를 가져가 수정등 하기위해 자신의 서버에 적용해볼 경우 해당 서버에 동일한 이름등으로 인한 에러발생이나,
서버의 균형이 깨질만한건 안됩니다. 부담없이 서버에 적용하거나 빼도 아무 문제가 없어야합니다.
02. 아주 간략한 소스만을 제안하고 다음분의 수정을 기다리고 참여하거나 바로 한가지의 기능을 삽입하여 제안하면 됩니다.
03. 추가되는 기능은 어떤 기능이나 상관없지만, 꼭 하나의 기능만을 추가합니다.
= 위 예제처럼 릴레이 성격을 띄우고 많은 분들이 참여하기 위해선 한가지만을 추가하고 만약 더 추가할 것이 있을경우는
일단 한가지 추가하여 다른사람을 거쳐 한번이상 수정되면 다시 가져다가 수정하면됩니다.
04. 처음 제안할때는 필히 스크립이름/아이템이름/아이템성격 3가지를 정해야합니다.
= 그래서 다음분이 그 성격에 맞게 한가지씩 추가해 나가면 됩니다. 아이템에관한 스토리라인 좋지요
05. 게시물을 올릴경우는 일관성있게 항상 게시물제목은 "[릴레이]아이템 이름" 으로 등록해야합니다.
06. 스크립 제안은 항상 Other & etc.. 게시판에다가 합니다.
[수정하는 사람의 규칙]
* 소스가 제안된 게시물에는 일체 장난식이나 불필요한 리플글이 등록되어서는 안됩니다.
01. 스크립 이름과 아이템 이름은 처음 제안한 사람이 정한걸로 계속 사용하여 수정하고, 아이템성격을 생각해서 그 의도한 바에 맞는 기능쪽으로 나가야합니다.
02. 추가되는 기능은 어떤 기능이나 상관없지만, 꼭 하나의 기능만을 추가합니다.
= 위 예제처럼 릴레이 성격을 띄우고 많은 분들이 참여하기 위해선 한가지만을 추가하고 만약 더 추가할 것이 있을경우는
일단 한가지 추가하여 다른사람을 거쳐 한번이상 수정되면 다시 가져다가 수정하면됩니다.
03. 추가되어진 스크립은 어디에 가져다놔도 아무 이상없이 적용되어지고 사용가능해야합니다.
04. 소스나 수정된 스크립을 자신이 수정할경우는 리플로 가져갑니다라는 뜻의 간단한 문구를 남깁니다.
그후 수정된 스크립을 가져간다는 뜻의 전에 남긴 리플에 수정한 스크립 내용으로 교체합니다.
= 자신이 수정할려고 해도 누군가가 가져간다는 문구를 남겼을경우는 절대 기다려야합니다.
05. 중요합니다. 수정할때는 기존의 적용된 기능의 변형은 하질 말아야합니다.
= 예를들면 Hue = 1152; 라고 추가된 기능에 다른사람이 Hue = 1164; 이런식으로 변경은 절대 금합니다.
= 대신에 Hue = Utility.RandomList( 1152, 1164 ); 이런식의 수정은 가능합니다.
06. 스크립은 항상 Other & etc.. 게시판에 생성되어진 소스 게시물에 리플형식으로 등록되어야 합니다.
* 현재 생각되어지는 문제점등에 관해서 규칙을 정해봤습니다. 바뀔 수 있겠죠?-- |
|
맨 위로 가기 |
|
Ancient
가입일: 2006년 05월 11일
게시물: 56
|
글 작성시간 : 2007-05-24 목 1:41 pm 제목: . |
|
|
오랜만에 이글을 보니 감회가 새롭네요. 무슨감회? -.-
좋은뜻에서 제안했던건데 제가 제시한 방법이 유치했는지 아니면 배워볼 맘은없고
그냥 다른사람거 슬쩍 가져다가 자기가 한것 마냥 섭마 놀이나 할 생각뿐인지 -.-
색넣어주기, 이름변경 등 간단한것 조차도 해보실 분들이 없으시다니.
진자 놀랍습니다;
진자 배워볼려고 노력하는 분들이 계셔야 질문글 올라와도 답변을 달고
또 내용도 상세해지고 관련부분쪽으로 추가 설명도 해드릴텐데..ㅋㅋ
한때 이런부분에 실망해서 제가 글쓴것과 답변달은거 다 수정해서 삭제 조취하고
울티마 관련 손놓고 잠간 떠났다가 다시온거지만 -.-
그러고보니 글 일일이 찾아서 지우기..이것도 꽤 힘들었었네요 ㅋ
답변달린건 게시글 삭제도 안되기 때문이였죠. -.-
제가 순차적으로 꽤 상세히 적어놓았던 것들이라. 낼름하고 집어갈분들 생각하니 좀 안좋았었거든요. 너무 독선적인가요?
그래서 간혹 올라오는 질문 글에 경우에 따라서 답변한것도 있고 안한것도 있습니다.
치사하게 군다고 하셔도 할말은 없습니다. 최소한의 예의를 알자는 것뿐 -0-
니가 해봤자 얼마나 많이알고 잘났냐. 그렇다면 포럼오지말고 꺼져라..하시는분 계셔도 할말없습니다.
잘해서 그런것도 아니고 그런분 때문도 아니고 런유오가 좋기때문에 있는거지요. ㅎㅎ 또 오래전의 저와 같은 분들이 계시리라 믿기 때문이기도 하고요.
왠 횡설수설인지.. 혹..욕하지들 마세요. 그냥 예전 울티마 전성기? 때의 일화도 생각나고
기억나는 분들도 있고해서 하는 넋두리니깐^^
아 또생각나는게 있는데 울티마온라인 2007년 버젼인 Kingdom reborn 이 나온다면
기존의 울티마에서 사용하던 아이템과 색표현이 바뀔듯한데 이를 기존에 서버에 사용한다면 아마 많은 변화가 필요하다고 봅니다.
새로운 클라에 맞게 전부 수정해야할 순간이 올거라 생각됩니다. 기다리는중인데 어찌 변화할지...
리얼컬러의 로망은 사라지는것인가! |
|
맨 위로 가기 |
|
vallkill
가입일: 2005년 07월 21일
게시물: 40
|
글 작성시간 : 2007-07-17 화 7:26 pm 제목: 훈훈하군요 |
|
|
1년인가? 만에 다시와보네요
이제 수능도 끝난 대학생신분, 나름 자유로움에 빠져있다가
생각나서 와봤는데
살아있군요, 반갑습니다. Ancient 님/ |
|
맨 위로 가기 |
|
byeonghunny
가입일: 2006년 06월 30일
게시물: 3
|
글 작성시간 : 2007-07-21 토 12:43 pm 제목: |
|
|
아직 초보인지라...
글을 읽는거 자체가 어렵네요...
워낙 접속하는 사람이 적어서 그런게 아닐까요..... |
|
맨 위로 가기 |
|
kwy3420
가입일: 2004년 08월 15일
게시물: 126
|
글 작성시간 : 2007-08-15 수 10:58 pm 제목: 흠냥 심심하길래...;; |
|
|
인용글 :
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x13FF, 0x13FE )]
public class Sword : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.DoubleStrike; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.ArmorIgnore; } }
public override int AosStrengthReq{ get{ return 25; } }
public override int AosMinDamage{ get{ return 11; } }
public override int AosMaxDamage{ get{ return 13; } }
public override int AosSpeed{ get{ return 46; } }
public override int OldStrengthReq{ get{ return 10; } }
public override int OldMinDamage{ get{ return 5; } }
public override int OldMaxDamage{ get{ return 26; } }
public override int OldSpeed{ get{ return 46; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x23A; } }
public override int InitMinHits{ get{ return 31; } }
public override int InitMaxHits{ get{ return 90; } }
[Constructable]
public Sword() : base( 0x13FF )
{
Weight = 6.0;
Name = "검";
Hue = 1152;
}
public Sword( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}
인용글 :
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x13FF, 0x13FE )]
public class AncientSword : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.DoubleStrike; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.ArmorIgnore; } }
public override int AosStrengthReq{ get{ return 25; } }
public override int AosMinDamage{ get{ return 11; } }
public override int AosMaxDamage{ get{ return 13; } }
public override int AosSpeed{ get{ return 46; } }
public override int OldStrengthReq{ get{ return 10; } }
public override int OldMinDamage{ get{ return 5; } }
public override int OldMaxDamage{ get{ return 26; } }
public override int OldSpeed{ get{ return 46; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x23A; } }
public override int InitMinHits{ get{ return 31; } }
public override int InitMaxHits{ get{ return 90; } }
[Constructable]
public AncientSword() : base( 0x13FF )
{
Weight = 6.0;
Name = "AncientSword";
Hue = 1152;
}
public AncientSword( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}
원문 을 이렇게 수정 해보았습니다.
음 적용할수 있게 수정 했습니다.
Sword 를 전부 AncientSword 로 수정 함
이걸 수정 안하면 아마 적용되도 서버에서 불러오질 못하는걸로 알고 있음. |
|
맨 위로 가기 |
|
syaroon
가입일: 2007년 09월 17일
게시물: 1
|
글 작성시간 : 2007-09-23 일 12:49 am 제목: .. 소스도 못 찾겠고해서.. 한번 해봅니다. |
|
|
코드 :
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x13FF, 0x13FE )]
public class AncientSword : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.DoubleStrike; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.ArmorIgnore; } }
public override int AosStrengthReq{ get{ return 25; } }
public override int AosMinDamage{ get{ return 11; } }
public override int AosMaxDamage{ get{ return 13; } }
public override int AosSpeed{ get{ return 46; } }
public override int OldStrengthReq{ get{ return 10; } }
public override int OldMinDamage{ get{ return 5; } }
public override int OldMaxDamage{ get{ return 26; } }
public override int OldSpeed{ get{ return 46; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x23A; } }
public override int InitMinHits{ get{ return 31; } }
public override int InitMaxHits{ get{ return 90; } }
[Constructable]
public AncientSword() : base( 0x13FF )
{
Weight = 6.0;
Name = "AncientSword";
Hue = 1152;
Attributes.BonusStr = 5;
Attributes.BonusInt = 5;
Attributes.BonusDex = 5;
}
public AncientSword( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}
.. 에이션트소드에서.. 힘,민첩,지능 + 5를 주어 봤습니다.. ㅌㅌ |
|
맨 위로 가기 |
|
|