2013年7月9日 星期二

什麼是桌遊

這是在準備中港青少契的專題時的大綱稿

名詞定義
桌上遊戲,原文Table-Top Game,
其實泛指不插電,不需要大幅度動作的遊戲
相對應的就是電腦遊戲或電視遊樂器(需插電,不需大幅度動作)
或是運動、舞蹈(不需插電,需大幅度動作)
或其他「遊戲」

只是在現在中文社會裡,桌上遊戲基本上就是指「圖版遊戲」了

桌上遊戲的分類

圖版遊戲,各種棋類也包含
卡片遊戲,撲克牌、UNO、Bang!等等,也包含各種「集換式卡片遊戲」(魔法風雲會、遊戲王)
骰子遊戲,最常見的應該就是香腸攤的「十八豆」或是賭場裡的「Craps」了
戰爭遊戲,縮尺軍事遊戲,show圖
角色扮演遊戲,show規則書

基本上就是這樣分類

圖版遊戲(Board Game)應該是你們比較感興趣的東西吧
今天就比較主要介紹這方面

圖版遊戲
分類:跟據遊戲形式分類
德式遊戲
     競爭代替戰爭、獎勵代替懲罰;追求溝通合作和資源規劃。老少咸宜、品質精良!
美式遊戲
     這是一個關於商業競爭、宇宙拓荒、屠龍的遊戲...重點是你出局的時候,我贏了!
殺手遊戲
     讓我猜猜,你就是臥底,對不對?
兵棋遊戲
     就喜歡紙上談兵。
大富翁遊戲
     這是什麼遊戲?你知道的!

分類:根據表達方式分類

象徵遊戲
     用你能理解的具體形象來幫你記憶複雜的遊戲規則。
主題遊戲
     加點機制和符號、圖像,用好的敘述方式讓玩家感受到遊戲主題。
模擬遊戲
     遊戲規則的目的是為了重現或創造一個栩栩如生的世界!
唯律遊戲(抽象遊戲)
     遊戲就是奠基於簡單的符號和規則。



參考網站
藝棋風桌遊百科
維基百科

2013年7月2日 星期二

如何把依賴的jar檔包成一個jar

1、问题背景

我们有时要开发一个Java Application,就是main来直接运行的那种,虽然有好多工具可以帮助我们打为jar。
但会有以下两个问题:
第一种是需要lib目录依赖一起来运行。(需要依赖文件,一个jar不可以运行)
第二种就是是把其它依赖的jar解开和你的类放在一个jar中。(框架的限制,包依赖之间的冲突,解压替换内容的过程产生类与资源的混乱)
第一种的问题显而易见需要copy太多东西(lib/*.jar)太麻烦。
第二种虽然可以做到一个jar运行的效果,但因为是解开再合再一起,尤其是jar中类有冲突时将和你在ide中不解开执行的效果不一样。(如eclipse可以运行,打包出来就不可以运行)

2、用One-JAR来解决

这个工具很好的解决了这一点,它相当于做一了一个启动壳。可以不改变你的jar与依赖的jar包,也不用解开。
简单理解就是jar中有jar。运行可以达到ide或配类路径运行一样的效果。
One-JAR有maven下的插件onejar-maven-plugin,所以对于maven的jar工程来说打包很方便。
pom.xml只需要加入以下plugin内容
 <plugin>  
   <groupId>org.apache.maven.plugins</groupId>  
   <artifactId>maven-jar-plugin</artifactId>  
   <configuration>  
     <archive>  
       <manifest>  
         <mainClass>org.noahx.onejartest.Launcher</mainClass>  
       </manifest>  
     </archive>  
   </configuration>  
 </plugin>  
   
 <plugin>  
   <groupId>com.jolira</groupId>  
   <artifactId>onejar-maven-plugin</artifactId>  
   <version>1.4.4</version>  
   <executions>  
     <execution>  
       <configuration>  
         <attachToBuild>true</attachToBuild>  
         <classifier>onejar</classifier>  
       </configuration>  
       <goals>  
         <goal>one-jar</goal>  
       </goals>  
     </execution>  
   </executions>  
 </plugin>  

maven-jar-plugin大家比较熟悉,主要的加启动类。
onejar-maven-plugin是我们的主角。有了它,你再运行mvn package时,就会多生成一个xxxxxx.one-jar.jar文件。
这个文件直接可以java -jar xxxxxx.one-jar.jar来单独运行。
而且就这一个jar。不需要其它依赖。copy起来很方便。
轉自http://my.oschina.net/noahxiao/blog/78241