找回密码
 点一下
查看: 3073|回复: 7

The JESP standard manifest (by Vexorian)

[复制链接]
发表于 2006-4-11 10:57:28 | 显示全部楼层 |阅读模式
For a spell to be included in this category it must follow the standard:

The JESP manifest:


This is the JESP standard document, if a map contains this document it means that there are
spells that follow this standard.

Spells of this map that follow the standard:
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- "Spell1"
- "Spell2"
...
- "SpellN"
(must change this part to mention the spells)

Advantage of the Standard
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- Implementing spells that follow the standard is relatively easier than implementing JASS
spells that don't follow the standard.

- Configuring/Balancing spells that follow the standard is relatively easier than
implementing JASS spells that don't follow the standard.

- Users may do the following procedure to make a new ability that uses the spell's script :

* Create a new Trigger with a name (case sensitive)
* Convert that trigger to custom text.
* Copy the spell's script to a text editor like Notepad or your OS equivalent.
* Replace the spell's Code name with the name you used on the trigger.
* Copy the new text to the new trigger
* Duplicate the Spell's original objects to have new ones for the new spell script.

   You are now able to use that new version of the spell.

- In case two guys give the same name to 2 different spells, there are no conflict problems
because you can easily change the name of one of them

What is the JESP Standard?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
   The JESP standard was designed to make spell sharing much better. And to make sure JASS
enhanced spells follow a rule, to prevent chaos.

What does JESP Standard stands for?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
JASS
Enhanced
Spell
Pseudotemplate

Requirements for a spell to follow the JESP Standard
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- The spell is written in JASS
- The spell is 100% multi instanceable.
- The spell script supports spells of any number of levels.
- The Spell has a specific code name.
- All the spell's specific code is inside the spell's "Trigger" (Trigger== that custom text
   slot that world editor calls Trigger, the spell may use as many 'trigger' objects as needed)
- Every single function or handle variables (attached variables) of a public object,
   Begins with the spell's codename plus "_" . (This means that replacing the codename with
   another value would create a non conflicting new instance of the spell).
- Does not use any Global variable that is specific for the spell (It may use non-specific
   global variables)
- The Spell's trigger must have the spell's codename as name
- The Spell's InitTrig function must be named: InitTrig_<CodeName>
- The spell has a header of functions used to configure it.
- Eyecandy and spell's balance have to be easy to configure
- The rawcode of the spell has to be input once.
- The name of the author should be included in the spell's script.
- The reason to exist of this standard is spell sharing. This document should be included
in the map explaining which spell follows the standard, and to promote the standard.


[ 本帖最后由 lars 于 2006-4-11 10:59 编辑 ]
 楼主| 发表于 2006-4-11 11:10:49 | 显示全部楼层
这是wc3c的一个关于JASS Spell的标准,制定了一系列的要求以及授权说明,首先一个spell要符合这些要求才能采用此标准,另外采用此标准就意味着别人能够在自己的地图中使用你的spell。
关于版权,提得已经够多了就不再多说了,关于对于Spell的基本要求,大家看下:

- The spell is 100% multi instanceable.
         要求这个Spell能同时Run多个不会出Bug,就这一条,国内活跃论坛上90%的“豪华”演示就要被咔嚓了

- Does not use any Global variable that is specific for the spell (It may use non-specific
   global variables)
        似乎见到很多人这么搞

- Eyecandy and spell\'s balance have to be easy to configure
         这个对很多人到不是问题,因为他们的技能把特效关掉之后根本空无一物,除了造成点伤害,
         还不如直接扔几个storm bolt来的简单,效果比满屏幕的红橙黄绿蓝靛紫更耐看,如果稍微有点品味的话。

- The reason to exist of this standard is spell sharing. This document should be included
in the map explaining which spell follows the standard, and to promote the standard.
         这个标准是为了更好的共享技能,使技能方便移植,的确值得很多人借鉴。

这是就事论事,我们的确需要做一些事情让war3地图编辑有一些好的标准可循,而不是看的让人只想:Q。
这不是崇洋媚外,俺强调过war3届俺只崇拜Lord Esper一人:)

[ 本帖最后由 lars 于 2006-4-11 11:15 编辑 ]
回复

使用道具 举报

发表于 2006-4-11 11:16:21 | 显示全部楼层
我英文菜
硬是看不懂

lars大大能翻译一下吗?



还有这个帖子:http://bbs.ourga.com/viewthread.php?tid=441
问TriggerExecuteWait等函数的作用的
我在wc3c找到几篇关于这些函数的讨论
但是看不懂
lars大大能帮忙翻译一下吗
回复

使用道具 举报

 楼主| 发表于 2006-4-11 11:24:20 | 显示全部楼层
TriggerWaitOnSleeps(t,true)是设置trigger是否能被sleep吧,否则在里面sleep会被无视
synchronization的几个基本不用看,只有在读文件(save game)时才用到,另外几个我和你
的意见一样。
不过,做了这么久地图也还是没有用到过他们,所以也无所谓:)
回复

使用道具 举报

发表于 2006-4-11 11:28:21 | 显示全部楼层
其实我以前就想搞个\"GA认证的\"。

但是遭到一致抵制,都认为那些条件打击人信心,于是当时暂时就算了。



PS:顺便存个图片。
回复

使用道具 举报

发表于 2006-4-11 11:36:58 | 显示全部楼层
我英盲。
lars大大能不能翻译一下捏?
回复

使用道具 举报

发表于 2006-4-11 11:37:55 | 显示全部楼层
………………2楼不是有大致的翻译么?
回复

使用道具 举报

发表于 2006-4-11 11:59:20 | 显示全部楼层
那个。。只是注释。。
没有翻译原文捏。
所以还是不懂。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-5-2 06:57 , Processed in 0.040157 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表