Megadreams Geplaatst: 9 november 2013 Rapport Geplaatst: 9 november 2013 Hey, Ik ben begonnen met een "klein" 2D spel in MTA dat gebasseerd op is Minecraft. Waarom? Het is leuk, leerzaam en het drijft de dx functies van MTA echt tot het uiterste. Meer informatie geef ik telkens weer bij nieuwe screenshots. Opmerkingen, vragen, ideeën en dergelijke zijn allen welkom en zullen zeker gebruikt worden. v0.0.1 alpha De meeste onder jullie zijn vast bekend met het erg populaire spel "Minecraft". Dit is in feite een 2D versie van Minecraft maar dan volledig in MTA. Nog beter het is ontworpen om ingame op een scherm gespeeld te worden en niet op fullscreen zoals in de screenshot te zien is. De reden waarom ik de screenshots wel maak in fullscreen is simpelweg het feit dat je zo een beter zicht op het spel hebt. In ieder geval is dit dus de hoofdreden waarom er geen buttons en dergelijke zijn maar puur commands. Echter wil ik dit op termijn aanpassen door het mogelijk te maken via bijvoorbeeld f11 te switchen naar fullscreen. Hierbij kan ik de commands wel vervangen door buttons. Het is echter iets voor op termijn. Het spel kan alleen gespeeld worden (singleplayer) maar ook met meerdere (multiplayer) echter werk ik op dit moment enkel en alleen nog aan de singleplayer maar eens die vergevorderd is zal ik ook beginnen aan de multiplayer sessies. Allemaal geheel in MTA. Hier heb je de mogelijkheid werelden aan te maken, te laden of deze te verwijderen. Een wereld genereert zich aan de hand van een seed (een cijfer) die doormiddel van de tickcount (het aantal millieseconden sinds de start van de server) zal gekozen worden. Aan de hand van deze seed zal een door mij geschreven algorithme dan de chunks genereren. Chunks zijn groepen van 50 blokken op de x-as en een onbeperkt aantal blokken op de y-as. Naarmate je verder door de wereld gaat zullen er meer chunks automatisch gegenereert worden. Het voordeel van deze seed is dat indien je twee werelden maakt met deze seed dat deze twee werelden ook identiek hetzelfde zullen zijn. Al zal jou spawnpoint wel ergens anders liggen dan op de andere wereld. In ieder geval, deze "pagina" staat je toe verschillende wereleden te genereren die op jou hardeschijf worden opgeslagen en zodoende via welke server die deze resource zou draaien deze werelden zou kunnen inladen. Ze nemen weinig ruimte in door de verschillende optimalisaties die ik doorgevoerd heb. Deze screenshot laat een nieuw genereerde wereld zien met gras, dirt, steen, bomen en water. Deze worden aan de hand van een door mij geschreven algorithme op hun plaats gezet aan de hand van de seed. Het is trouwens louter toeval dat de bomen hier exact even groot zijn. Hun grote word namelijk ook willekeurig gekozen aan de hand van de seed. Daarnaast is het water ook voortgekomen uit één water sourceblok die zich verspreid heeft. Echter werd deze map genereert op mijn ietswat oudere algorithme. Dit is een zeer recente screenshot die laat zien hoe het water zich nu op een meer realistischere manier voortbeweegt. v0.0.2 Alpha Het is natuurlijk niet leuk als je meteen weet wat er onder/naast jou te vinden is. Al zeker niet als het gaat om ores want dan zou het spel natuurlijk veel te makkelijk worden. Hierdoor ben ik begonnen met dynamische belichting waarvan dit een eerste test is. Ik ben ook begonnen met het geven van de mogelijkheid om blokken te selecteren en deze te breken. Het is echter nog niet mogelijk blokken bij te plaatsen. Reageren
_Night-Men_ Geplaatst: 9 november 2013 Rapport Geplaatst: 9 november 2013 Erg leuk idee. Ben benieuwd waar het op uitloopt, ga het zeker proberen Reageren
Ezra24rct3 Geplaatst: 27 november 2013 Rapport Geplaatst: 27 november 2013 Is de MP ook al mogelijk? Reageren
Megadreams Geplaatst: 27 november 2013 Auteur Rapport Geplaatst: 27 november 2013 Nog niet. Momenteel zit ik nog met een probleem betreffende de loops welke ik eerst zal moeten oplossen. Reageren
Megadreams Geplaatst: 5 januari 2014 Auteur Rapport Geplaatst: 5 januari 2014 De reden waarom dit een 2D versie is en geen 3D versie in MTA. Ik kan geen grotere draw distance dan deze realiseren helaas. De blokken zijn in principe textureloos buiten enkele simpel gekleurde textures. Via shaders zorg ik ervoor dat elke zijde de juiste texture voor dat blok krijgt. Helaas kan ik geen grotere draw distance krijgen (zelfs niet met LOD's) en zal het dus bij een 2D versie blijven. Reageren
Recommended Posts
Een reactie plaatsen
Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.