Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > Angband > Development

Reply
 
Thread Tools Display Modes
Old September 1, 2010, 18:12   #11
Tiburon Silverflame
Swordsman
 
Join Date: Feb 2010
Posts: 405
Tiburon Silverflame is on a distinguished road
Were this to be done, I agree that a redesign would be preferable. As far as port-specific stuff, one approach that puts off this issue is to focus first on as much of the internals that should have no platform dependencies...which should be a very large chunk of the codebase.

The gradual port might work, *if* there are major sections that can be isolated and repackaged cleanly...but that's probably not common.
Tiburon Silverflame is offline   Reply With Quote
Old September 2, 2010, 10:55   #12
nppangband
NPPAngband Maintainer
 
Join Date: Dec 2008
Location: Stat Gain, Angband
Posts: 926
nppangband is on a distinguished road
Isn't somebody working on a first person, real time (as opposed to turn based) version of Angband coded in Python? Why not combine efforts and help him write his Angband code so he can just concentrate on the graphics for the objects and monsters?
nppangband is offline   Reply With Quote
Old September 2, 2010, 11:41   #13
Magnate
Angband Devteam member
 
Join Date: May 2007
Location: London, UK
Posts: 5,057
Magnate is on a distinguished road
Send a message via MSN to Magnate Send a message via Yahoo to Magnate
Quote:
Originally Posted by nppangband View Post
Isn't somebody working on a first person, real time (as opposed to turn based) version of Angband coded in Python? Why not combine efforts and help him write his Angband code so he can just concentrate on the graphics for the objects and monsters?
Are you talking about jplur's Blengband? I thought that was in C# rather than Python?
Magnate is offline   Reply With Quote
Old September 2, 2010, 16:25   #14
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 8,551
Derakon is on a distinguished road
IIRC he's using the Blender game engine, which should be all Python. It's worth checking, anyway.
Derakon is offline   Reply With Quote
Old September 2, 2010, 16:39   #15
Magnate
Angband Devteam member
 
Join Date: May 2007
Location: London, UK
Posts: 5,057
Magnate is on a distinguished road
Send a message via MSN to Magnate Send a message via Yahoo to Magnate
Quote:
Originally Posted by Derakon View Post
IIRC he's using the Blender game engine, which should be all Python. It's worth checking, anyway.
Ironically that means that this project would have to focus on the boring stuff (the z-term type stuff in AngbandBase), if he's already doing the interesting (gameplay) stuff in Python. But yes, worth looking into.
Magnate is offline   Reply With Quote
Old September 2, 2010, 20:40   #16
Sirridan
Knight
 
Sirridan's Avatar
 
Join Date: May 2009
Posts: 560
Sirridan is on a distinguished road
I'm still working on it to see how far I can get, I'll post it if I get anywhere interesting.
Sirridan is offline   Reply With Quote
Old September 3, 2010, 16:06   #17
nppangband
NPPAngband Maintainer
 
Join Date: Dec 2008
Location: Stat Gain, Angband
Posts: 926
nppangband is on a distinguished road
Quote:
Originally Posted by Magnate View Post
Ironically that means that this project would have to focus on the boring stuff (the z-term type stuff in AngbandBase), if he's already doing the interesting (gameplay) stuff in Python. But yes, worth looking into.
That is kind of my thinking. As long as people are considering a complete rewrite, why not do something like that? Try to bring Angband out from the constraints of 1980s technology and see what is possible? (With the limitation being how much time people are willing to spend on this project; of course)
nppangband is offline   Reply With Quote
Old September 3, 2010, 16:12   #18
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 8,551
Derakon is on a distinguished road
Assuming a rewrite happens, I would suggest doing it in such a way that it supports old-school play but also has the option of going in newer directions. Make it modular, in other words. Blengband would replace the rendering module and flip a toggle that says "make it real-time", but would otherwise use the same base as "PyVanilla" would.
Derakon is offline   Reply With Quote
Old September 3, 2010, 17:51   #19
nullfame
Adept
 
Join Date: Dec 2007
Posts: 165
nullfame is on a distinguished road
Quote:
Originally Posted by nppangband View Post
Try to bring Angband out from the constraints of 1980s technology and see what is possible?
I'm sorry because I don't mean to come off as a crotchety old man here but I've followed this thread and two things have constantly been on my mind:

1. Isn't C still one of the most widely used languages in the world? We're not talking about FORTRAN here. I would guess the Python interpreter is written in C.

2. Why Python? I'm not trying to be partisan here or start a "my language is better" thread. I honestly want to know. I don't program in C. I don't program in Java but why would Python be a better choice? From my vantage point it appears to be enjoying a period of popularity. Java seems to be the dominant player today and for some time now (other than C). Are there features/libraries of Python that would make it an easier project? Or is Python just what the cool kids use today?
nullfame is offline   Reply With Quote
Old September 3, 2010, 18:35   #20
RogerN
Swordsman
 
RogerN's Avatar
 
Join Date: Jul 2008
Posts: 306
RogerN is on a distinguished road
Quote:
2. Why Python? I'm not trying to be partisan here or start a "my language is better" thread. I honestly want to know. I don't program in C. I don't program in Java but why would Python be a better choice?
I would assume that the purpose of a project like this is to improve the Angband codebase in order to ultimately make Angband a more extensible game. For variant writers, this would mean that more radical gameplay alterations and additions are possible with fewer lines of code. For Vanilla this would mean that gameplay and UI refinements are quicker and easier to implement. Hopefully.

There's nothing wrong with C, but because C is a more low-level language, extensibility does not come easily. On the other hand, object-oriented languages provide several features which are intended to improve extensibility.

Why Python? First of all, Python is a dynamic language while Java is not. This can be a good thing or a bad thing depending on how you look at it, but if rapid development is a major goal then I would think that a dynamic language would be a plus.

Of all the dynamic languages Python is probably the most popular right now (although maybe Tcl could compete in that area). Popularity is certainly a selling point, as it means that there are plenty of developers around with Python experience. With popularity also comes maturity; Python benefits from a very comprehensive set of standard libraries and highly optimized compilation (for a dynamic language anyway).

For a project like this I don't think Java would be a bad choice either. Java is more rigid, though, and that's some of what the project is trying to get away from.
RogerN is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
New ego-weapon/armour proposal: (Light) Nightmarjoo Vanilla 24 May 20, 2010 23:08


All times are GMT +1. The time now is 05:24.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2018, vBulletin Solutions Inc.