http://www.perlmonks.org?node_id=712151

This is an idea i have for long but can't do it myself fo various reasons, but first the idea itself: On CPAN we have Checkers, Sudoku, Risk and many other. Most of these programs are written in Tk. Why not write an umbrella programm and wrap the the whole into a PAR, .deb or whatever and ship as a "Perl Games Pack". People love little games. sites like King.com make a living from that and many people would learn by the way that something like Perl exist or ist still very active. This idea sprang to me first when member of our community released Games that even don't yet on CPAN still after years. See the here.

My excuse not to do that is firstly that I'm 100% involved with Wx and don't know any Tk. And I have a project on my own that gladly eats every second which i'm giving willingly (see my Sig). But maybe the idea just springs into somebodys hands which would as eagerly see that alive as me.

Thanks for reading.


Kephra, a beautiful Perl Editor lives at http://kephra.sourceforge.net

Replies are listed 'Best First'.
Re: Perl Simple Games Pack
by jplindstrom (Monsignor) on Sep 18, 2008 at 12:56 UTC
    Here's a Worm game I wrote when I practiced TDD. Includes Windows binary. It's not on CPAN though.

    Windows only (couldn't get curses or whatever to work), but it should be easy to add different displays if anyone's interested (not that anyone would be).

    /J

Re: Perl Simple Games Pack
by vkon (Curate) on Sep 19, 2008 at 06:46 UTC
    The exactly same idea is long-ago implemented in Tk (which is part of Tcl/Tk), see it on tcl/tk wiki page at Tk Game Pack

    the single file tkgamepack.kit is run with "tclkitsh", so this is run with 2 files, but actually single-file executable is also possible.

    This is not Perl, but Tcl could be very tightly tied to Perl with a Tcl-Tk CPAN module.

    To say from a little different perspective - I, personally, write perl+Tcl/Tk code in a such way:

    $interp->Eval(<<'EOS'); # here goes Tcl/Tk code to construct GUI interface EOS # and here goes perl/Tk text to use my widgets $text->insert('end','text');
    so if I would implement your idea I would heavily base on said tkgamepack.kit file.

    update: fix 2 typos

      Interesting, but I really thought about the games that are already implemented in Perl. Shure the list on this TCL site looks impressive, but my idea was not to have A games pack qith a Purlsticker on it, but to release THESE games. Because when they are used more widely this also will spur theyr developement. What i envision is a nice layouted window, almost like HTML where you can see all the games at once with links to description and links to start the game.

      Kephra, a beautiful Perl Editor lives at http://kephra.sourceforge.net
        once again, the "tkgamepack.kit" is indeed HTML-like looking Tk app with clickable links that start a game or demo, and this coincides with your envision :)

        Back to the topic, Perl will never have such a collection of games, because Tk is not its domain, unlike Tcl/Tk, which is born to be GUI-enabled.

        Have you tried running this "tkgamepack.kit"?
        its really impressive.

Re: Perl Simple Games Pack
by zentara (Archbishop) on Sep 18, 2008 at 12:05 UTC
    My excuse is that I want people to install Perl, the games are the little bait-on-hook to get people to install. Why start giving the unitiated the idea that Perl scripts are giant 5 meg binaries?

    I'm not really a human, but I play one on earth Remember How Lucky You Are
      No I think the logic from there perspective will work in advantage to Perl because we will have Perl and Tk just once and the games are really small themself. He/She will think oh a whole set of games and just 5 Megs. This Perl must be incredible. *g*

      Kephra, a beautiful Perl Editor lives at http://kephra.sourceforge.net
Re: Perl Simple Games Pack
by cosmicperl (Chaplain) on Sep 18, 2008 at 21:02 UTC
    Seems like a great idea to me. Unfortunately I've got too many projects to work through at the moment as it is.

    Lyle