AntMe! Klon

Du hast eine Idee für ein Projekt?
Crazed
User
Beiträge: 171
Registriert: Sonntag 18. Mai 2008, 11:44

Dienstag 20. Mai 2008, 16:10

Ah, das ist gut zu wissen.

MfG,
CracKPod
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Dienstag 20. Mai 2008, 16:27

Wäre es nicht einfacher das ganze per Netzwerk-Interface zu realisieren? Somit wäre man Client-seitig Plattform unabhängig und man müßte sich nicht ums "sandboxed" kümmern ...

Allerdings gibts da ja schon Sachen, auch wenn mir der Name nicht einfällt momentan (findet man aber unter freshmeat iirc).
Crazed
User
Beiträge: 171
Registriert: Sonntag 18. Mai 2008, 11:44

Dienstag 20. Mai 2008, 16:51

Hyperion hat geschrieben:Wäre es nicht einfacher das ganze per Netzwerk-Interface zu realisieren? Somit wäre man Client-seitig Plattform unabhängig und man müßte sich nicht ums "sandboxed" kümmern ...

Allerdings gibts da ja schon Sachen, auch wenn mir der Name nicht einfällt momentan (findet man aber unter freshmeat iirc).
Sandboxed? In wie fern? Python ist doch so oder so cross-platform?...

Wenn dir der Name einfällt poste ihn bitte.
MfG,
CracKPod
BlackJack

Dienstag 20. Mai 2008, 20:42

Ich denke Hyperion meint, das man die KI-Progrämmchen in Sandboxen laufen lassen sollte, da man sonst schummeln kann und einzelne Ameisen einfach in die Spiellogik eingreifen können.

Wenn man also nicht auf den Sportsgeist der Ameisenprogrammierer vertrauen möchte, bietet es sich an das Spiel als Server zu implementieren, so dass die Ameisen nicht mehr auf Interna zugreifen können.
Jan-Peer
User
Beiträge: 166
Registriert: Dienstag 2. Oktober 2007, 10:55

Dienstag 20. Mai 2008, 20:50

Schlimmer noch: Fiese Ameisen, die durch das Dateisystem krabbeln. Und die dann irgendwo auf eine "Mod"-Seite hochladen, damit sie sich auch schön verbreiten können.
BlackJack

Dienstag 20. Mai 2008, 21:15

Heissen solche Ameisen dann nicht Würmer!? :-)
Benutzeravatar
Trundle
User
Beiträge: 591
Registriert: Dienstag 3. Juli 2007, 16:45

Dienstag 20. Mai 2008, 21:32

Das ist doch auch ein Anreiz, programmieren zu lernen...
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Mittwoch 21. Mai 2008, 10:30

Da ich gerade von meinem Spiel gefrustet bin, und etwas abwechslung benötige, mache ich mich daran mal einen Singleplayer prototypen zu entwickeln. Vielleicht klappts, vielleicht auch nicht. :P
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Mittwoch 21. Mai 2008, 12:04

http://realtimebattle.sourceforge.net/
Den meinte ich glaub ich :-)

http://www.bluefire.nu/droidbattles/index.html
Der hier hat wohl eher Ähnlichkeit mit eurer Idee

Und dann gabs da noch einen in Ruby ... aber den find ich grad nicht.
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Mittwoch 21. Mai 2008, 12:37

So, das absolute Grundgerüst habe ich fertig:

ki.py:

Code: Alles auswählen

import pygame

def walk_x(rect):
    rect = rect.move(1, 0)
    return rect

def walk_y(rect):
    rect = rect.move(0, 1)
    return rect
snake.py:

Code: Alles auswählen

import pygame, ki

class snake():

    def __init__(self):
        self.image = pygame.image.load('Hopsy.bmp')
        self.rect = self.image.get_rect()

    def KI(self):
        pass #it`s your turn ...
snakeme.py:

Code: Alles auswählen

import pygame
from pygame.locals import*
from snake import snake

pygame.init()
size = width, height = 900, 700
screen = pygame.display.set_mode(size)
black = 0, 0, 0
screen.fill(black)
snake = snake()
while True:
    for event in pygame.event.get():
        if event.type == KEYDOWN and event.key == K_ESCAPE:
            pygame.quit()
    snake.KI()
    screen.blit(snake.image, snake.rect)
    pygame.display.flip()

BlackJack

Mittwoch 21. Mai 2008, 13:11

Und jetzt bitte alles was mit `pygame` zu tun hat raus nehmen. Wenn Du Spiel und GUI nicht sauber trennst, brauchst Du IMHO gar nicht erst anfangen.
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Mittwoch 21. Mai 2008, 13:50

Musstest du mich jetzt demotivieren :evil:
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Mittwoch 21. Mai 2008, 17:05

Imperator hat geschrieben:Musstest du mich jetzt demotivieren :evil:
Es ist nun mal so, dass wenn du Logik und darstellung vermischt sich das zu einem Maintenance-Alptraum entwickelt und der Code dann für niemandem mehr von nutzen sein kann.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Mittwoch 21. Mai 2008, 17:30

Die Leute die es benutzen verwenden dann ja nur noch snake.py wo sie die Ki reinschreiben. Snakeme.py wird nur noch per Doppelklick gestartet. Also was habt ihr?
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Mittwoch 21. Mai 2008, 19:19

Naja, niemand kann dich zwingen mit sauberen Konzepten zu programmieren, aber man kann dich ja darauf hinweisen ;-) Uns trennt man Logik und Darstellung sauber, ist es eben eine saubere Lösung. Nebenbei: Wieso sollte ich unter Linux eine xyz.exe starten wollen?
Antworten