Allgemein

Coding

std::string randomString(int)

0

Mir ist langweilig. Und der Blog soll leben!

#include <cstdlib>
#include <ctime>
#include <string>
std::string randomstring(unsigned int len) {
	using namespace std;

	char rndstr[len+1];
	//long cast to avoid precision warnings on x64 systems
	static long seed = (long) (time(0) + &rndstr);

	srand(seed);
	for(unsigned int i=0; i<len; ++i) {
		switch(rand()%3) {
			case 0: rndstr[i] = rand() % 26+65; break;	//A-Z
			case 1: rndstr[i] = rand() % 9 +48; break;	//0-9
			case 2: rndstr[i] = rand() % 26+97; break;	//a-z
		}
		seed += (long) rndstr[i];
	}
	rndstr[len] = 0;
	return rndstr;
}

#include <iostream>
int main() {
	for(int i=1; i<=50; i++)
		std::cout<<i<<" - "<<randomstring(i)<<std::endl;
	return 0;
}
42.zip

42.zip mit Windows 7

0

Es ist ja bekannt, dass man 42.zip nicht rekursiv öffnen sollte.
Ich habe heute gelernt, dass diese Datei unter Windows 7 nicht mal aufbewahrt werden darf.
Irgendwann wird der Windows Search Indexer drüber stolpern, und das ganze RAM innerhalb von 4 Sekunden vollstopfen.

Windows 7 wird dann ganz freundlich die Meldung bringen, dass der Speicher voll ist und ein paar Programme zur Sicherheit beendet werden sollen.

Solltet euch das passiert sein, so habt ihr noch [bei 4GB RAM, 8GB SWAP] ca. 20 Sekunden Zeit (während Windows versucht Teile des RAMs in den SWAP zu stecken) um

  1. Taskmanager zu öffnen
  2. Prozess SearchFilterHost.exe solange killen, bis er nicht mehr auftaucht (ca. 3 mal).
  3. 42.zip wieder löschen.

Sollte der Bildschirm schwarz werden, bevor der Prozess beendet wurde: GAME OVER.

Minecraft mini

Minecraft Server mit Nether

0

Diese Anleitung ist nun überflüssig, da Nether im SMP offiziel unterstützt wird.

Man kann zwar Nether-Server erstellen, aber diese blieben bis jetzt eine geschlossene Welt, wo man nichts rein- und rausbringen konnte. Es sei, wir ändern immer wieder das “hellworld”-Parameter und starten den Server neu (funktioniert mit 2-3 Spielern vielleicht noch, aber bei 30: noway).

Nun hab ich (vielleicht neben vielen anderen) ein einfachen Weg gefunden Nether parallel laufen zu lassen und zwar einfach als einen zweiten Server, dessen Spieleldaten mit dem ersten synchronisiert werden. Der Schlüssel liegt im players-Ordner der Minecraftwelt.

Anleitung

Ich setze vorraus, dass du dich mit deinem System bestens auskennst und symbolischen Links Erfahrung hast.

  1. Begebe dich auf den Server und geh zum Spawn (wichtig!).
  2. Nun beende den Server.
  3. Geh ins Verzeichnis des Minecraft Servers.
  4. Mach ein Backup deiner Welt(en). Sicher ist sicher.
  5. Erstelle einen Ordner mit einem beliebigen Namen (z.B. “nether”)
  6. Kopiere die Server Executable (.exe/.jar) und server.properties in diesen rein. (DIE WELT NICHT REINKOPIEREN!)
  7. Falls du im Nether die gleichen Plugins verwenden willst, kannst du diese als Symlinks mitkopieren. Pass aber drauf auf, dass auf die erste Welt zugeschnittenen Konfigurationen nicht mitkommen.
  8. Öffne die server.properties im Nether-Ordner und bearbeite folgende Zeilen:
    hellworld=true
    server-port=6666 # kannst du selber bestimmen
  9. Starte nun den Nether-Server (für ein Testlauf) und beende ihn wieder, sobald genug Welt für den Start generiert wurde (Betreten in der Zeit ist nicht verboten ;-) ).
  10. Gehe in den Welt-Verzechnis des Nethers und lösche den players-Ordner.
  11. Setzte in diesem einen symbolischen Link vom players-Ordner der normalen Minecraft Welt (../world/players).
    Verzeichnisstruktur würde dann so ähnlich aussehen:

    minecraft
    ├── backups
    ├── banned-ips.txt
    ├── banned-players.txt
    ├── minecraft_autobackup.sh
    ├── minecraft_server.jar
    ├── nether
    │   ├── backups
    │   ├── banned-ips.txt -> ../banned-ips.txt
    │   ├── banned-players.txt -> ../banned-players.txt
    │   ├── minecraft_autobackup.sh
    │   ├── minecraft_server.jar
    │   ├── ops.txt -> ../ops.txt
    │   ├── plugins -> ../plugins
    │   ├── server.log
    │   ├── server.properties
    │   ├── start
    │   └── world
    │       ├── DIM-1
    │       │   ├── 1
    │       │   ├── 1a
    │       │   ├── 1b
    │       │   └── 2
    │       └── players -> ../../world/players
    ├── ops.txt
    ├── plugins
    ├── server.log
    ├── server.properties
    ├── start
    └── world
        ├── 1
        ├── 1a
        ├── 2
        └── players
            ├── faggot
            ├── Player1
            └── Player2

     

  12. Starte beide Server.
  13. Fertig!

Um in den Nether zu wechseln, muss der Client nun einfach disconnecten und die Portnummer dessen Servers eingeben. Sein Inventar, HP und Rüstung bleiben erhalten.

Anmerkung

Die Positionen der Spieler werden zwischen den Servern auch synchronisiert! Ich rate es ab, willkürlich zwischen den Welten hin und her zu springen unabhängig davon, wo man gerade ist, denn schlimmstenfalls landest du plötzlich im Lava des Nethers oder im nirgendwo der normalen Welt.

Am Besten einigst du dich mit den Spielern für einen Platz wo ein Pseudoportal hinkommt und gehst in den Nether erst, wenn du auf diesem stehst. Im Nether kannst du das Gleiche machen und an der Stelle ein Outpost oder so errichten.

Viel Spaß im Nether… beim Laufen! :twisted:

Mandelbrot

2

.. einer der genialsten Mathematiker der Nachkriegszeit, hat sein Leben am 14. Oktober 2010 nun auch abgegeben.
Die 2 oder 4 Leser hier werden wohl fragen, wieso ich darüber schreibe? Weil der Typ einfach awesome war!

Jeder Anspruch, als Erster etwas erfunden oder gefunden zu haben, offenbart nur außerordentliche Arroganz.

Ich arbeitete in einem Industrielabor, weil die akademische Welt keinen Platz für schräge Denker hatte.

“Und weiter?”

Seine Entdeckung in your face!




ERROR: Connection not compatible.

0
Dreieck +-Loch

Wer hat noch nicht mit Klötzen gespielt?

1

Dann wird’s mal Zeit!

“NEXT HOSTING LEVEL”

1

Und wieder ein Umzug.

Am Neujahr freute ich mich über Square7. Doch nun vergehen 10< Sekunden, bis eine Seite lädt und nicht selten bekommt der Besucher “500 – Internal Server Error” zu Gesicht.

Das wars, bei den Freehostern werde ich mich in näherer Zukunft nicht blicken lassen. Entweder gibt es zu viele Einschränkungen oder zu wenig  Performance.

Hetzner – Level 4

  • sehr hohe Geschwindigkeit
  • eigene Domain
  • keine einschränkende Regeln bei der Gestaltung des Webspaces (bei Square7: keine Ajax-Chats)
  • Gutes Sicherheitskonzept
  • nur 5 € (!)

Ein Grund für mich hier sehr lange zu bleiben. :-)

und demnächst mehr zu bloggen! ;-)

Garry's Mod Night Club Randomness

1

Witzig und cool. :mrgreen:

Feuerwerk

Time… This is a special time.

2

Zwei Zahlen ändern sich und… ach..

YEAAH! Neues Jahrzehnt! Wohooo

Voll hyper geil cool awesome etc.

Viel Spaß wünsch ich allen und lasst den Himmel leuchten.

Gut Sprung ins neue Jahr(zehnt)!  :mrgreen:

Square7

1

ist schon mal deswegen toll, weil hier die Sockets (fsockopen) geöffnet sind.

Dazu noch üppige:

  • 7 GB Speicherplatz :-o
  • 12 MySQL Datenbanken
  • 20 FTP Accounts

und natürlich typische “kein Filesizelimit”, unendlich Traffic, etc.

Danke, miro & bplaced Team, dass ihr sowas kostenlos zur Verfügung steht. :-)

Ich hoffe, dass es so bleibt und keine Idioten daherkommen und es in “DDoS7” umbenennen.

Gehe zum Anfang