• Hallo liebe Userinnen und User,

    nach bereits längeren Planungen und Vorbereitungen sind wir nun von vBulletin auf Xenforo umgestiegen. Die Umstellung musste leider aufgrund der Serverprobleme der letzten Tage notgedrungen vorverlegt werden. Das neue Forum ist soweit voll funktionsfähig, allerdings sind noch nicht alle der gewohnten Funktionen vorhanden. Nach Möglichkeit werden wir sie in den nächsten Wochen nachrüsten. Dafür sollte es nun einige der Probleme lösen, die wir in den letzten Tagen, Wochen und Monaten hatten. Auch der Server ist nun potenter als bei unserem alten Hoster, wodurch wir nun langfristig den Tank mit Bytes vollgetankt haben.

    Anfangs mag die neue Boardsoftware etwas ungewohnt sein, aber man findet sich recht schnell ein. Wir wissen, dass ihr alle Gewohnheitstiere seid, aber gebt dem neuen Board eine Chance.
    Sollte etwas der neuen oder auch gewohnten Funktionen unklar sein, könnt ihr den "Wo issn da der Button zu"-Thread im Feedback nutzen. Bugs meldet ihr bitte im Bugtracker, es wird sicher welche geben die uns noch nicht aufgefallen sind. Ich werde das dann versuchen, halbwegs im Startbeitrag übersichtlich zu halten, was an Arbeit noch aussteht.

    Neu ist, dass die Boardsoftware deutlich besser für Mobiltelefone und diverse Endgeräte geeignet ist und nun auch im mobilen Style alle Funktionen verfügbar sind. Am Desktop findet ihr oben rechts sowohl den Umschalter zwischen hellem und dunklem Style. Am Handy ist der Hell-/Dunkelschalter am Ende der Seite. Damit sollte zukünftig jeder sein Board so konfigurieren können, wie es ihm am liebsten ist.


    Die restlichen Funktionen sollten eigentlich soweit wie gewohnt funktionieren. Einfach mal ein wenig damit spielen oder bei Unklarheiten im Thread nachfragen. Viel Spaß im ngb 2.0.

Programmierwettbewerb 2: Aaah a snake!

Novgorod

ngb-Nutte

Registriert
14 Juli 2013
Beiträge
3.055
ja, ist der mit dem schirm.. nach so vielen jahren habe ich eine hass-liebe zu ihm entwickelt, aber er kann schon ordentlich nerven :D..

avira ist bisher offenbar immer nur an einem rechner angesprungen, bei allen versionen, während es an einem anderen rechner keine version des spiels beanstandet hat (trotz derselben version von avira und windows auf beiden rechnern).. mei, es ist wie es ist, stört ja zumindest nicht fürs proof-of-concept ..

was "fensterlos" angeht, weiß ich nicht wie das in windows genau definiert ist, aber es fehlen (bei allen versionen des spiels) ein paar zentrale komponenten ;) - es gibt keinen taskleisten-button und offenbar keine (auch keine versteckten?) fenster-elemente wie rahmen oder titelleiste mit minimieren/maximieren/schließen-buttons etc.. es wird im taskmanager aber trotzdem als "anwendung" angezeigt (und nicht nur als komplett fensterloser "prozess") mit titeln wie FormGame oder Splash mit einem lustigen kleinen standard-icon, das aber nicht das windows-standard-icon für anwendungen ohne icon ist ;) :confused:
snake_taskmrg.png
 

KaPiTN

♪♪♫ wild at heart ♪♫♫♪

Registriert
14 Juli 2013
Beiträge
29.138
@Novgorod:

Das Icon ist das Standardicon einer .NET Windowsforms-Anwendung. Wie bereits erwähnt gibt es in der Anwendung kein Fensterlos. Irgendwo drauf muß ich ja malen.

Windforms ist jetzt nicht für Spiele konzipiert. Ich habe nur den Borderstyle auf "none" gesetzt. Allerdings kann man dann den Titel der Fenster angezeigt bekommen, was ich einerseits nicht erwartet habe, daß da jemand nach sucht, du aber andererseits gemacht und gefunden hast. ;)

Der einzig Borderstyle, wo das nicht passiert, wäre der "Toolwindos". Da gibt es dann aber wieder eine Titlebar, die nicht gewollt ist.

Man könnte jetzt den Titel aller Forms "Snäik" nennen und auch in der Taskbar anzeigen lassen, damit man an die Fenster leichter drankommt.

Oder aber, per Code Extended Window Styles benutzen.

Ich habe letzteres mal gemacht.

aktuelle Version: 0.8.15.4
 

Novgorod

ngb-Nutte

Registriert
14 Juli 2013
Beiträge
3.055
*ausgrab*

auch wenn der "wettbewerb" wohl längst vergessen ist, habe ich doch tatsächlich etwas zeit gefunden, mein LabSnake komplett zu überarbeiten und die geplanten features einzubauen.. die eigentliche motivation dahinter war allerdings, etwas "best practice" zu üben (was ich sonst wann immer es geht vermeide :D) - im gegensatz zur hingeschluderten ersten version.. das ergebnis ist etwas bessere performance und deutlich mehr übersicht und struktur (aber das ist ja geschmackssache) und einfache erweiterbarkeit..

labsnake.png
labsnake2.png


neue features:

- diverse parameter lassen sich per ini-datei vor dem programmstart einstellen (wird mitgeliefert und ist dokumentiert).. ist keine ini-datei vorhanden, wird automatisch eine mit default-werten (aber ohne dokumentation) im selben ordner wie die exe erstellt (benötigt schreibzugriff auf beinhaltenden ordner).. achtung: der inhalt der ini-datei sollte nur geändert werden wenn das programm nicht läuft, weil es beim beenden parameter, die in der GUI anpassbar sind (momentan nur der FPS-wert), in die ini zurückschreibt..
- die spielfeldgröße lässt sich per ini anpassen, dabei werden alle GUI-elemente soweit es sinnvoll ist mitskaliert..
- die wahrscheinlichkeit für das auftreten von bonuspunkten sowie die punkte pro gesammeltem bonuspunkt sind in der ini einstellbar..
- input-buffergröße ist in der ini einstellbar..
- speed (FPS) ist in der ini und per GUI einstellbar; der GUI-wert wird nach programmende automatisch in der ini gespeichert.. ebenfalls kann man einstellen, dass der speed nicht während des spiels veränderbar ist, sondern nur vor dem spielstart..
- den pausenmodus (leertaste) kann man jetzt per ini deaktivieren für den besonderen "thrill" ;)..
- die gesamten frames seit spielbeginn werden jetzt angezeigt (statt spielzeit), sowie die render-zeit für jeden frame für performance-tests (letzteres kann per ini deaktiviert werden)..
- neues bonuspunktsystem: ein bonuspunkt wird mit einer einstellbaren wahrscheinlichkeit generiert (default: 0.5% per frame, d.h. im mittel alle 200 frames) und bekommt eine zufällige "lebensdauer" zwischen 1 und 10 sekunden zugewiesen.. die verbleibende lebensdauer für jeden bonuspunkt wird auf dem spielfeld angezeigt - läuft sie ab bevor der bonuspunkt gefressen wurde, verschwindet er wieder.. es ist möglich, dass mehrere bonuspunkte gleichzeitig auf dem spielfeld sind - die anzahl ist nicht begrenzt (lustig wird's wenn man die wahrscheinlichkeit auf 1 stellt ;)).. die freie kombination aus speed (FPS), bonus-wahrscheinlichkeit und bonus-wert lässt sehr unterschiedliche spielmodi zu, nur die lebensdauer ist fix (weil man auf dem bonuspunkt nur eine ziffer sinnvoll anzeigen kann)..

das programm (exe und ini in selben ordner entpacken):
Anhang anzeigen labsnake_1.3.zip

es wird nach wie vor die Labview 2014 runtime engine zum ausführen benötigt, jedoch begnügt sich das programm mit der 34MB "kleinen" minimalversion:
http://download.ni.com/support/labview/windows/runtime/2014 SP1/LVRTE2014SP1min.exe

viel spaß! beim interesse am G-code (Labview source), einfach bescheid sagen..
 
Zuletzt bearbeitet:

drfuture

Zeitreisender
Teammitglied

Registriert
14 Juli 2013
Beiträge
8.753
Ort
in der Zukunft
An Ideen mangelt es mir normal nicht *g* - mich ärgert nur das ich nie Zeit finde an meinen eigenen Ideen teil zu nehmen :D
Und ich weiß nicht wie viel interesse an einem neuen Wettbewerb besteht ....
 

theSplit

1998
Veteran Barkeeper

Registriert
3 Aug. 2014
Beiträge
28.573
Hm, ich könnte auch mal wieder etwas mitmachen... aber da ich momentan zu viel in der boardeigenen Kneipe versacke, sind meine Kenntnisse schon wieder eingestaubt. :(
Wäre aber gut auch in dem Bereich aktiver zu werden, also Interesse wäre schon von meiner Seite da.

---------

Aber mal in die Runde gefragt:
Wie ist eigentlich das Feedback bei euch zur letzten Challenge? - Und gibt es Gründe warum einige vielleicht nicht mitmachen konnten/wollten in Bezug auf die Aufgabe selbst; war die Aufgabe zu umfangreich, zu kompliziert, sollte man sich vielleicht lieber mit kleineren Aufgaben beschäftigen die mehr/anders auf Stärken und Schwächen und oder Optimierung und oder Code Organisation eingehen?

Ich fänds persönlich nicht schlecht an etwas kleinerem zu Werkeln, bevor man wieder etwas größeres in Angriff nimmt. Einfach um mal zu schauen in wie weit man Code für ein Problem "optimieren" kann und um die Ideen für verschiedene Ansätze zu sehen für "generelle Anwendungsfälle/Probleme".

Vielleicht auch mal Textprocessing/Datenverarbeitung allgemein wo man mal weniger auf 3rd Party angewiesen sein muß, sondern sich darauf einigt eine Sprache auszunutzen mit dem was mitgeliefert wird. Diese DNA Challenge war zum Beispiel sehr interessant fand ich. Nicht nur weil man dort mit Daten arbeiten konnte, aber auch weil man die Sprache an sich noch etwas weiter vertiefen konnte aufgrund der Problemstellung. Vielleicht kann man einfach auch mit Übungsdatensätzen (die öffentlich/im Netz gestellt werden) hantieren lernen, oder oder.

Ich könnt mir aber vorstellen das es schwerer ist Challenges mit so einem Anspruch aus dem Hut zu zaubern, aber man könnte sich ja mal zusammen setzen.
Man könnte sich natürlich auch als "Team" an diesen Challenges beteiligen und hier präsentieren, aber bissle was eigenes wäre schon irgendwie cooler, auch wenn es keine Preisgelder gibt. ;)

----------------------------

Und einige Anlaufschwierigkeiten mit Git schien es ja auch zu geben, so das es nur marginal genutzt wurde - wobei ich jetzt auch schon lange nicht mehr dort reingeschaut hatte ob noch etwas dazugekommen war...
 

Novgorod

ngb-Nutte

Registriert
14 Juli 2013
Beiträge
3.055
kleinere aufgaben sind auch ok, wäre auch viel angenehmer mitzumachen, allein schon vom zeitaufwand her.. aber eine beschränkung auf eine bestimmte sprache lehne ich strikt ab, es sei denn ich darf sie aussuchen :D..
 

theSplit

1998
Veteran Barkeeper

Registriert
3 Aug. 2014
Beiträge
28.573
Also nur um das festzuhalten, festnageln wollte ich niemanden auf eine Sprache, hoffe das kommt nicht so rüber - sollte es jedenfalls nicht. ;)
 

MingsPing

NGBler

Registriert
15 Juli 2013
Beiträge
347
Bin für Aufgaben ohne Grafik :-)

Definitiv dafür, jede Sprache benutzen zu dürfen!
Google Code Jam macht das immer ganz klug. Sie stellen dir eine Aufgabe, es gibt ein Textdokument mit Eingabewerten und dein Programm soll die Ausgabe in ein Textdokument ausgeben.
Hier ein Beispiel: Hier

Unabhängig von dem Wettbewerb hier könnte man bei Google Code Jam auch ein NGB-Team zusammenstellen. Registrierung öffnet zufällig am 08.03.!
 

Roin

Freier Denker

Registriert
22 Juli 2013
Beiträge
581
Also ich fand den Umfang der Aufgabe gar nicht so schlecht.
Allerdings bevorzuge ich Challenges, die wenig mit Grafischer Oberfläche daherkommen. Einfach weil ich in dem Bereich nicht so gut bin und auch nicht allzu großes Interesse darin habe, meine Ausgabewerte irgendwie schön darzustellen (auch wenn das bald im Rahmen meiner Bachelorarbeit auf mich zukommt).

Die erwähnte DNA-Challenge habe ich hier ja verbreitet. Soweit ich weiß, gibt es von den IT-Talents auch bereits wieder eine neue Code Competition, an der ich dieses mal allerdings nicht teilnehmen werde.

An sich habe ich allerdings auch Interesse an weiteren kleinen Wettbewerben hier - ein bisschen lernt man dabei ja dann auch immer.

Google Code Jam macht das immer ganz klug. Sie stellen dir eine Aufgabe, es gibt ein Textdokument mit Eingabewerten und dein Programm soll die Ausgabe in ein Textdokument ausgeben.
Hier ein Beispiel: Hier
An sich keine schlechte Idee und die Aufgaben scheinen auch "ok" zu sein. Allerdings gefällt mir das mit dem Zeitlimit bei den Aufgaben nicht. Man schreibt sein Programm und sieht dann plötzlich, dass die Datei doch irgendwie anders aussieht, als man gedacht hat. Zeitbegrenzungen sind insgesamt doof. Wenn die Aufgbabe später umfangreicher ist, dann kommt es möglicherweise sogar auf die Sprache an, die man verwendet hat. Java zum Beispiel ist generell deutlich langsamer als C.
 
Zuletzt bearbeitet:

theSplit

1998
Veteran Barkeeper

Registriert
3 Aug. 2014
Beiträge
28.573
Bezüglich Google Code Jam:
An sich keine schlechte Idee und die Aufgaben scheinen auch "ok" zu sein. Allerdings gefällt mir das mit dem bei den Aufgaben nicht. Man schreibt sein Programm und sieht dann plötzlich, dass die Datei doch irgendwie anders aussieht, als man gedacht hat. Zeitbegrenzungen sind insgesamt doof. Wenn die Aufgbabe später umfangreicher ist, dann kommt es möglicherweise sogar auf die Sprache an, die man verwendet hat. Java zum Beispiel ist generell deutlich langsamer als C.

Also ich hab mir mal die Regeln bzw. drei der Google Code Jam "Übungsaufgaben" etwas genauer angeschaut:

Das Zeitlimit ist so gemeint: Wenn man sich die Textdatei (Small oder Large Dataset) herunterlädt, beginnt ein Countdown, circa ~3-5 Minuten je nach Aufgabe. Innerhalb dieser Zeit kann man sein Programm die Lösung berechnen lassen und hochladen. Die Practice and Learn Contest sind im übrigen ohne Zeitlimit, hier kann man bequem so oft hochladen wie man will und seine Lösung überprüfen lassen.

Aber, es steht bei jeder Aufgabe auch ein Sample, ein Beispiel aus den "Practice and Learn"-Aufgaben: https://code.google.com/codejam/contest/351101/dashboard#s=p0
Dort findet man immer das "Sample", also eine Handvoll Testinput mit dem man anfangen kann zu werkeln und zu testen und natürlich zu überprüfen ob man die gleiche Ausgabe wie im Sample hervorbringt.
Glaubt man dann, man hat die richtige Lösung für das Problem, DANN lädt man sich die Small bzw. Large Dataset(s) herunter und der Countdown startet, lässt das Programm die Datei verarbeiten und lädt die Ausgabe dann innerhalb des Zeitlimits hoch. So hab ich es in der Regel bei den ersten Beispiel gemacht.

Es ist auch nicht so das es Gigabyte an Daten sind die man hier berechnen lassen muß was Stunden in Anspruch nimmt, bisher waren die Daten ganz minimal, vielleicht maximal 80-90 kb. Die Limits der Aufgaben sind in allen 3 Beispielen/Aufgaben, auf dem oberen Link und den Aufgabenseiten, angegeben, so das man immer einschätzen kann wie umfangreich das Datenvolumen ist das es gilt zu bearbeiten.

Von der Schwierigkeit her sind die Aufgaben auch nicht soooo dramatisch, ich bin immer auf Lösungen zwischen 160 - 220 Zeile je Aufgabe gelandet, aber da war auch viel was man eventuell auch hätte kürzen/weglassen können. Eine Aufgabe kann man in circa 1,5 - 3 Stunden lösen, je nachdem wie konzentriert man daran arbeitet - ist aber nur meine Einschätzung, da ich häufig viel nachschlagen habe.
Wer flüssing in einer Sprache ist, wird es vielleicht auch in 45 Minuten programmieren können, bin ich mir sogar relativ sicher ;)
 

KaPiTN

♪♪♫ wild at heart ♪♫♫♪

Registriert
14 Juli 2013
Beiträge
29.138
Wie wäre es mal mit etwas neuem?

Ich hätte da gerade eine Idee für etwas ohne Graphik.
 

KaPiTN

♪♪♫ wild at heart ♪♫♫♪

Registriert
14 Juli 2013
Beiträge
29.138
@drfuture:

Danke. Für den PC kannte ich noch nicht. Ich hatte nur mal gelesen, daß da ein Handyspiel meine Idee "geklaut" hat
 
Oben