From nemysis@gmx.ch  Fri Apr 27 20:09:44 2012
Return-Path: <nemysis@gmx.ch>
Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52])
	by hub.freebsd.org (Postfix) with ESMTP id D524A1065673
	for <FreeBSD-gnats-submit@freebsd.org>; Fri, 27 Apr 2012 20:09:44 +0000 (UTC)
	(envelope-from nemysis@gmx.ch)
Received: from mailout-de.gmx.net (mailout-de.gmx.net [213.165.64.22])
	by mx1.freebsd.org (Postfix) with SMTP id 530158FC12
	for <FreeBSD-gnats-submit@freebsd.org>; Fri, 27 Apr 2012 20:09:44 +0000 (UTC)
Received: (qmail invoked by alias); 27 Apr 2012 20:09:42 -0000
Received: from 201-230.4-85.cust.bluewin.ch (EHLO something.email.com) [85.4.230.201]
  by mail.gmx.net (mp010) with SMTP; 27 Apr 2012 22:09:42 +0200
Received: by something.email.com (sSMTP sendmail emulation); Fri, 27 Apr 2012 22:09:43 +0200
Message-Id: <20120427200944.D524A1065673@hub.freebsd.org>
Date: Fri, 27 Apr 2012 22:09:43 +0200
From: nemysis <nemysis@gmx.ch>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: [NEW PORT] games/castle-combat: It is a clone of the old arcade game Rampart
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         167374
>Category:       ports
>Synopsis:       [NEW PORT] games/castle-combat: It is a clone of the old arcade game Rampart
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    mva
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri Apr 27 20:10:10 UTC 2012
>Closed-Date:    Sat Jan 12 10:14:57 UTC 2013
>Last-Modified:  Sat Jan 12 10:14:57 UTC 2013
>Originator:     nemysis
>Release:        FreeBSD 9.0-RELEASE amd64
>Organization:
>Environment:
System: FreeBSD 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC
>Description:
It is a clone of the old arcade game Rampart. Up to four players
(or more in future versions) build castle walls,
place cannons inside these walls, and shoot at the walls
of their enemy(s). If a player cannot build a complete wall
around one of his castles, he loses. The last surviving player wins.

WWW: http://www.linux-games.com/castle-combat/

Generated manually, tested with RedPorts and port test, sent with FreeBSD Port Tools 0.99_5 (mode: new)
>How-To-Repeat:
>Fix:

--- .shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	castle-combat
#	castle-combat/Makefile
#	castle-combat/pkg-descr
#	castle-combat/distinfo
#	castle-combat/pkg-plist
#
echo c - castle-combat
mkdir -p castle-combat > /dev/null 2>&1
echo x - castle-combat/Makefile
sed 's/^X//' >castle-combat/Makefile << '0cba0f35fa89802301efea903d85eb31'
X# New Ports collection makefile for:	castle-combat
X# Date created:		2012-04-27
X# Whom:			nemysis@gmx.ch
X#
X# $FreeBSD$
X#
X
XPORTNAME=	combat
XPORTVERSION=	0.8.1
XCATEGORIES=	games
X#MASTER_SITES=	SF
XMASTER_SITES=	SF/${PKGNAMEPREFIX}${PORTNAME}/${PKGNAMEPREFIX}${PORTNAME}/${PKGNAMEPREFIX}${PORTNAME}-${PORTVERSION}
XPKGNAMEPREFIX=	castle-
XDISTNAME=	${PKGNAMEPREFIX}${PORTNAME}-${PORTVERSION}
X
XMAINTAINER=	nemysis@gmx.ch
XCOMMENT=	It is a clone of the old arcade game Rampart
X
XLICENSE=	GPLv2
X
XRUN_DEPENDS=	${PYTHON_SITELIBDIR}/pygame/__init__.py:${PORTSDIR}/devel/py-game
X
XWRKSRC=		${WRKDIR}/${PKGNAMEPREFIX}${PORTNAME}-${PORTVERSION}
X
XUSE_TWISTED=	yes
XUSE_PYTHON=	yes
XNO_BUILD=	yes
X
XPORTDOCS=	README TODO
XDATADIR=	${PREFIX}/share/${PKGNAMEPREFIX}${PORTNAME}
XDOCSDIR=	${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME}
X
Xpost-patch:
X	@${REINPLACE_CMD} -e 's,/usr/bin/python,${PYTHON_CMD},' \
X		${WRKSRC}/castle-combat.py
X	@(cd ${WRKSRC}/src && ${REINPLACE_CMD} -e 's/UInt8/uint8/g' common.py widget.py)
X	@(cd ${WRKSRC}/src && ${REINPLACE_CMD} -e 's/Numeric/numpy/g' ai.py battleplayer.py buildplayer.py \
X		common.py field.py game.py gamephases.py map.py placeplayer.py player.py selectplayer.py widget.py)
X	@(cd ${WRKSRC}/src && ${RM} *.py.bak)
X
Xdo-install:
X# Scripts
X	@${PRINTF} "#!/bin/sh\n\ncd ${DATADIR} &&\
X		./castle-combat.py\n" > ${WRKDIR}/castle-combat.sh
X	@${INSTALL_SCRIPT} ${WRKDIR}/castle-combat.sh ${PREFIX}/bin/castle-combat
X
Xpost-install:
X# Data
X	${MKDIR} ${DATADIR}
X.for d in data src castle-combat.py castle-combat.py.bak setup.py
X	@(cd ${WRKSRC} && ${COPYTREE_SHARE} ${d} ${DATADIR})
X.endfor
X	${INSTALL_DATA} ${WRKSRC}/data/gfx/castle.png ${PREFIX}/share/pixmaps/${PKGNAMEPREFIX}${PORTNAME}.png
X	@(cd ${DATADIR} && ${CHMOD} 755 castle-combat.py castle-combat.py.bak src/main.py src/server.py)
X
X# Documentations
X.if !defined(NOPORTDOCS)
X	${MKDIR} ${DOCSDIR}
X.for f in ${PORTDOCS}
X	${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
X.endfor
X.endif
X
X.include <bsd.port.mk>
0cba0f35fa89802301efea903d85eb31
echo x - castle-combat/pkg-descr
sed 's/^X//' >castle-combat/pkg-descr << 'ee2722d2e77b1f9eba9d4cd033586453'
XIt is a clone of the old arcade game Rampart. Up to four players
X(or more in future versions) build castle walls,
Xplace cannons inside these walls, and shoot at the walls
Xof their enemy(s). If a player cannot build a complete wall
Xaround one of his castles, he loses. The last surviving player wins.
X
XWWW: http://www.linux-games.com/castle-combat/
ee2722d2e77b1f9eba9d4cd033586453
echo x - castle-combat/distinfo
sed 's/^X//' >castle-combat/distinfo << 'f278a719d98992586fc1fcdb6d52a609'
XSHA256 (castle-combat-0.8.1.tar.gz) = 33eefc1402363a77b1a02dd33cc38d14c997a78ab81148c84b1221f95af1e4c2
XSIZE (castle-combat-0.8.1.tar.gz) = 1721393
f278a719d98992586fc1fcdb6d52a609
echo x - castle-combat/pkg-plist
sed 's/^X//' >castle-combat/pkg-plist << '4ebccd3a1aacf816f5d7149f42fa8b81'
Xbin/castle-combat
Xshare/castle-combat/castle-combat.py
Xshare/castle-combat/castle-combat.py.bak
Xshare/castle-combat/data/colourba.ttf
Xshare/castle-combat/data/doc/rules.html
Xshare/castle-combat/data/font_read_me.html
Xshare/castle-combat/data/gfx/._wall.png
Xshare/castle-combat/data/gfx/.xvpics/wall.png
Xshare/castle-combat/data/gfx/arrow.png
Xshare/castle-combat/data/gfx/back.jpg
Xshare/castle-combat/data/gfx/back.png
Xshare/castle-combat/data/gfx/bigcannon0001.png
Xshare/castle-combat/data/gfx/bigcannon0002.png
Xshare/castle-combat/data/gfx/bigcannon0003.png
Xshare/castle-combat/data/gfx/bigcannon0004.png
Xshare/castle-combat/data/gfx/bigcannon0005.png
Xshare/castle-combat/data/gfx/bigcannon0006.png
Xshare/castle-combat/data/gfx/bigcannon0007.png
Xshare/castle-combat/data/gfx/bigcannon0008.png
Xshare/castle-combat/data/gfx/bigcannon0009.png
Xshare/castle-combat/data/gfx/bigcannon0010.png
Xshare/castle-combat/data/gfx/bigcannon0011.png
Xshare/castle-combat/data/gfx/bigcannon0012.png
Xshare/castle-combat/data/gfx/bigcannon0013.png
Xshare/castle-combat/data/gfx/bigcannon0014.png
Xshare/castle-combat/data/gfx/bigcannon0015.png
Xshare/castle-combat/data/gfx/bigcannon0016.png
Xshare/castle-combat/data/gfx/bigcannon0017.png
Xshare/castle-combat/data/gfx/bigcannon0018.png
Xshare/castle-combat/data/gfx/bigcannon0019.png
Xshare/castle-combat/data/gfx/bigcannon0020.png
Xshare/castle-combat/data/gfx/bigcannon0021.png
Xshare/castle-combat/data/gfx/bigcannon0022.png
Xshare/castle-combat/data/gfx/bigcannon0023.png
Xshare/castle-combat/data/gfx/bigcannon0024.png
Xshare/castle-combat/data/gfx/bigcannon0025.png
Xshare/castle-combat/data/gfx/bigcannon0026.png
Xshare/castle-combat/data/gfx/bigcannon0027.png
Xshare/castle-combat/data/gfx/bigcannon0028.png
Xshare/castle-combat/data/gfx/bigcannon0029.png
Xshare/castle-combat/data/gfx/bigcannon0030.png
Xshare/castle-combat/data/gfx/bigcastle.png
Xshare/castle-combat/data/gfx/box.png
Xshare/castle-combat/data/gfx/cannon0001.png
Xshare/castle-combat/data/gfx/cannon0002.png
Xshare/castle-combat/data/gfx/cannon0003.png
Xshare/castle-combat/data/gfx/cannon0004.png
Xshare/castle-combat/data/gfx/cannon0005.png
Xshare/castle-combat/data/gfx/cannon0006.png
Xshare/castle-combat/data/gfx/cannon0007.png
Xshare/castle-combat/data/gfx/cannon0008.png
Xshare/castle-combat/data/gfx/cannon0009.png
Xshare/castle-combat/data/gfx/cannon0010.png
Xshare/castle-combat/data/gfx/cannon0011.png
Xshare/castle-combat/data/gfx/cannon0012.png
Xshare/castle-combat/data/gfx/cannon0013.png
Xshare/castle-combat/data/gfx/cannon0014.png
Xshare/castle-combat/data/gfx/cannon0015.png
Xshare/castle-combat/data/gfx/cannon0016.png
Xshare/castle-combat/data/gfx/cannon0017.png
Xshare/castle-combat/data/gfx/cannon0018.png
Xshare/castle-combat/data/gfx/cannon0019.png
Xshare/castle-combat/data/gfx/cannon0020.png
Xshare/castle-combat/data/gfx/cannon0021.png
Xshare/castle-combat/data/gfx/cannon0022.png
Xshare/castle-combat/data/gfx/cannon0023.png
Xshare/castle-combat/data/gfx/cannon0024.png
Xshare/castle-combat/data/gfx/cannon0025.png
Xshare/castle-combat/data/gfx/cannon0026.png
Xshare/castle-combat/data/gfx/cannon0027.png
Xshare/castle-combat/data/gfx/cannon0028.png
Xshare/castle-combat/data/gfx/cannon0029.png
Xshare/castle-combat/data/gfx/cannon0030.png
Xshare/castle-combat/data/gfx/cantbuild.png
Xshare/castle-combat/data/gfx/castle.png
Xshare/castle-combat/data/gfx/castleselect.png
Xshare/castle-combat/data/gfx/crosshair.png
Xshare/castle-combat/data/gfx/destroyed-bigcannon1.png
Xshare/castle-combat/data/gfx/destroyed-bigcannon2.png
Xshare/castle-combat/data/gfx/destroyed-bigcannon3.png
Xshare/castle-combat/data/gfx/destroyed-bigcannon4.png
Xshare/castle-combat/data/gfx/destroyed-bigcannon5.png
Xshare/castle-combat/data/gfx/destroyed-cannon1.png
Xshare/castle-combat/data/gfx/destroyed-cannon2.png
Xshare/castle-combat/data/gfx/destroyed-cannon3.png
Xshare/castle-combat/data/gfx/destroyed-cannon4.png
Xshare/castle-combat/data/gfx/destroyed-cannon5.png
Xshare/castle-combat/data/gfx/garbage-med.png
Xshare/castle-combat/data/gfx/garbage-new.png
Xshare/castle-combat/data/gfx/garbage-old.png
Xshare/castle-combat/data/gfx/garbage.png
Xshare/castle-combat/data/gfx/gradient.png
Xshare/castle-combat/data/gfx/ground.png
Xshare/castle-combat/data/gfx/house.png
Xshare/castle-combat/data/gfx/land.png
Xshare/castle-combat/data/gfx/notready.png
Xshare/castle-combat/data/gfx/select.png
Xshare/castle-combat/data/gfx/shot.png
Xshare/castle-combat/data/gfx/tank1.png
Xshare/castle-combat/data/gfx/tank2.png
Xshare/castle-combat/data/gfx/tank3.png
Xshare/castle-combat/data/gfx/tank4.png
Xshare/castle-combat/data/gfx/waitblock.png
Xshare/castle-combat/data/gfx/wall.png
Xshare/castle-combat/data/gfx/water.png
Xshare/castle-combat/data/sound/._cannon.wav
Xshare/castle-combat/data/sound/._drop.wav
Xshare/castle-combat/data/sound/._farmor8.xm
Xshare/castle-combat/data/sound/._fdream.xm
Xshare/castle-combat/data/sound/cannon.wav
Xshare/castle-combat/data/sound/drop.wav
Xshare/castle-combat/data/sound/farmor8.xm
Xshare/castle-combat/data/sound/fdream.xm
Xshare/castle-combat/setup.py
Xshare/castle-combat/src/ai.py
Xshare/castle-combat/src/battleplayer.py
Xshare/castle-combat/src/buildplayer.py
Xshare/castle-combat/src/cannon.py
Xshare/castle-combat/src/castle-combat_bootstrap.py
Xshare/castle-combat/src/client.py
Xshare/castle-combat/src/common.py
Xshare/castle-combat/src/config.py
Xshare/castle-combat/src/field.py
Xshare/castle-combat/src/game.py
Xshare/castle-combat/src/gamephases.py
Xshare/castle-combat/src/main.py
Xshare/castle-combat/src/map.py
Xshare/castle-combat/src/menu.py
Xshare/castle-combat/src/network.py
Xshare/castle-combat/src/placeplayer.py
Xshare/castle-combat/src/player.py
Xshare/castle-combat/src/selectplayer.py
Xshare/castle-combat/src/server.py
Xshare/castle-combat/src/sound.py
Xshare/castle-combat/src/state.py
Xshare/castle-combat/src/widget.py
Xshare/pixmaps/castle-combat.png
X@dirrmtry share/castle-combat/src
X@dirrmtry share/castle-combat/data/sound
X@dirrmtry share/castle-combat/data/gfx/.xvpics
X@dirrmtry share/castle-combat/data/gfx
X@dirrmtry share/castle-combat/data/doc
X@dirrmtry share/castle-combat/data
X@dirrmtry share/castle-combat
X@dirrmtry share/applications
4ebccd3a1aacf816f5d7149f42fa8b81
exit
--- .shar ends here ---

>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-ports-bugs->mva 
Responsible-Changed-By: mva 
Responsible-Changed-When: Tue May 8 05:46:05 UTC 2012 
Responsible-Changed-Why:  
I'll take it. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=167374 

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/167374: commit references a PR
Date: Tue, 15 May 2012 16:23:57 +0000 (UTC)

 mva         2012-05-15 16:23:43 UTC
 
   FreeBSD ports repository
 
   Modified files:
     games                Makefile 
   Added files:
     games/kajaani-kombat Makefile distinfo pkg-descr 
   Log:
   Kajaani Kombat is a funny multiplayer game... and much more!
   It is a rampart-like game (old arcade classic) set in space.
   
   Kajaani Kombat is playable with two to four players, over the internet
   or alternatively two players sharing one computer. It is also possible
   to play over the internet with, for example, 4 players of which two are
   sharing the same computer. Enjoy it with your friends!
   
   WWW: http://kombat.kajaani.net/
   
   PR:             ports/167374
   Submitted by:   nemysis@gmx.ch
   
   Revision  Changes    Path
   1.1428    +1 -0      ports/games/Makefile
   1.1       +69 -0     ports/games/kajaani-kombat/Makefile (new)
   1.1       +2 -0      ports/games/kajaani-kombat/distinfo (new)
   1.1       +9 -0      ports/games/kajaani-kombat/pkg-descr (new)
 _______________________________________________
 cvs-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/cvs-all
 To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
 

From: Marcus von Appen <mva@FreeBSD.org>
To: nemysis <nemysis@gmx.ch>, bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/167374: [NEW PORT] games/castle-combat: It is a clone of
 the old arcade game Rampart
Date: Sun, 17 Jun 2012 11:46:24 +0200

 --opJtzjQTFsWo+cga
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 
 The game crashes instantly on choosing a castle with the following exception:
 
 Traceback (most recent call last):
   File "/usr/local/lib/python2.7/site-packages/twisted/internet/base.py", line 1169, in run
     self.mainLoop()
   File "/usr/local/lib/python2.7/site-packages/twisted/internet/base.py", line 1178, in mainLoop
     self.runUntilCurrent()
   File "/usr/local/lib/python2.7/site-packages/twisted/internet/base.py", line 800, in runUntilCurrent
     call.func(*call.args, **call.kw)
   File "/usr/local/lib/python2.7/site-packages/twisted/internet/task.py", line 215, in __call__
     d = defer.maybeDeferred(self.f, *self.a, **self.kw)
 --- <exception caught here> ---
   File "/usr/local/lib/python2.7/site-packages/twisted/internet/defer.py", line 134, in maybeDeferred
     result = f(*args, **kw)
   File "src/state.py", line 101, in stateLoop
     top_state.on_event(event)
   File "src/state.py", line 61, in on_event
     handler(top_state, event)
   File "src/gamephases.py", line 77, in handle_keypress
     player.handle_event(event)
   File "src/player.py", line 177, in handle_event
     self.phase_player.handle_event(*args, **kwargs)
   File "src/selectplayer.py", line 75, in handle_event
     self.confirm_select()
   File "src/network.py", line 45, in <lambda>
     return lambda *args, **kwargs: delegate_and_call(method_name, *args, **kwargs)
   File "src/network.py", line 40, in delegate_and_call
     getattr(to_class, method_name)(self, *args, **kwargs)
   File "src/selectplayer.py", line 60, in confirm_select
     game.field.look_for_secured_areas(self.player)
   File "src/field.py", line 326, in look_for_secured_areas
     update_screen(old_secured, foreign_walls)
   File "src/field.py", line 275, in update_screen
     changed_fields = nonzero(different.flat).tolist()
 exceptions.AttributeError: 'tuple' object has no attribute 'tolist'
 
 
 This must be fixed before the port is committed.
 
 Regards
 Marcus
 
 --opJtzjQTFsWo+cga
 Content-Type: application/pgp-signature
 
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.19 (FreeBSD)
 
 iEYEARECAAYFAk/dp3AACgkQi68/ErJnpkf1pwCfftPwfPCJXFAfWC/PeD4wpxGF
 wSYAn2R3EY6YTB71PepioRsgYF7kNvdH
 =8h2z
 -----END PGP SIGNATURE-----
 
 --opJtzjQTFsWo+cga--
State-Changed-From-To: open->feedback 
State-Changed-By: mva 
State-Changed-When: Sat Oct 6 17:03:12 UTC 2012 
State-Changed-Why:  
Are there any news on a possible fix for the issue I mentioned earlier? 
If not, I will close this PR for now until a fix becomes available. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=167374 
State-Changed-From-To: feedback->closed 
State-Changed-By: mva 
State-Changed-When: Sat Jan 12 10:14:57 UTC 2013 
State-Changed-Why:  
Closed due to no feedback - please submit that port again once a fix 
becomes available. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=167374 
>Unformatted:
