Code Monkey home page Code Monkey logo

goworld's Introduction

GoWorld

A client-server network socket based user interface for Go game, dedicated for two players. 围棋游戏网络双人版。

背景

本游戏软件首先诞生于世纪交界之际。其时,新浪围棋,联众等游戏平台尚不普及,QQ等网络通信还刚起步。当时的我还在天朝的某古都醉生梦死,享受着安逸的生活。而我一好友却不开眼地选择了背井离乡,远渡重洋。我们都酷爱围棋,希望能常常对弈。为了方便切磋,本人响应毛主席老人家的号召:自己动手,丰衣足食。于是便有了这个网络版的《围棋世界》。

多年以后的今天,当我无意中翻出它,不免心生感慨。于是决定将其重新清理,并张贴出来,与大家共享。更多的则是为了缅怀那个曾经纯真的岁月:下棋是为了娱乐,交友,和陶冶情操,而不是一味的输赢。在围棋的世界里,我们不会被狗(阿法狗)咬,更不会有什么狗咬狗的事件发生。时过境迁,随着人类科技的进步,尤其是近来人工智能的火热,我们逐渐地迷失了方向。

主要功能

本软件的主要功能是网络远程对弈。具体支持:

  1. 新局:包括选择黑白,是否让子等。支持选择确认,反对后的重新选择等。
  2. 存盘和续盘
  3. 复盘(研究学习用)
  4. 悔棋(支持单步和多步)
  5. 自动提子
  6. 禁止打劫点和自杀点的入子
  7. 结束时辅助数子

其他辅助功能:

  1. 酷炫的弘扬祖国围棋文化的动画界面。
  2. 第一人联机后可以选择通知方式,即在对方上线时的系统提醒:包括系统振铃,播放选择的音乐,发送电子邮件。
  3. 对弈全程的文字或语音(麦克在线录音传递)的实时交谈。
  4. 在线帮助手册。

使用

您需要有Java(新编译使用了Java 7)运行环境,根目录下的data目录(及其下目录和文件),和两个jar文件。不需要任何第三方的库(什么?您不信?二十年前,我们都是量体裁衣的,更不会去胡乱抓起别人的裤子就穿)。

首先在一台机器上运行。程序起来后需要输入端口号,缺省使用7030。您需要选择一个没有冲突的数字。

java -jar GoServerRun.jar

然后要起两个客户端的实例:

java -jar GoClientRun.jar

原则上这三个程序可以运行在一台,两台或三台机器上。但客户端连接服务器时您必须输入服务器程序运行程序的IP地址和端口号。

如果您需要修改源程序,并重新编译,那么您可以在修改后运行:

javac -d build *.java
cd build
createServer.bat
createClient.bat

然后您把生成的两个JAR文件复制到上层目录就可以运行了。

Future Work

什么时候开始我们都必须搞出这么个浮夸的东东来的呢?您见过几个在这里列出来的条目后来被实现了的吗?

  1. 删除该小节。
  2. 参照第一条。

goworld's People

Contributors

bshao001 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.