Propositum DOOMQL praesentatur, varietatem ludi DOOM evolvens, lingua SQL scriptam et intra systema administrationis datorum CedarDB exsequibilem, partim cum PostgreSQL compatibilem. Ludus modum lusorum multiplayer sustinet et imagines ASCII reddit. Codex propositi sub licentia MIT distribuitur.
Omnes partes ludi, inter quas codex redditus, synchronizatio status lusoris in ludis multi-lusoribus, et circuitus ludi, in lingua SQL scriptae sunt. Logica ludi per tabulas, prospectus (VISUS), et proceduras reconditas implementatur, quod DOOMQL a similibus proiectis distinguit: DuckDB-DOOM (proceduras reconditas in WebAssembly utitur) et pg_doom (implementatum ut extensio PostgreSQL in lingua C).
DOOMQL secundum notionem "omnia sunt data" elaboratum est, tabulis utens ad statum mapparum, lusorum, rerum per planum motuum, eventuum inputatorum, configurationum, et imaginum conservandum. Circuitus ludi qui statum ludi tractat et renovat a scripto viginti linearum geritur, quod codicem SQL tricies per secundum exsequitur ad trajectorias iactus calculandas, collisiones analysandas, inputata tractanda, et lusores denuo generandos.
Redditor tridimensionalis (3D) in SQL fundatus radios delineationem, proiectionem imaginum in scaenam tridimensionalem (3D), tractationem imbricationis rerum (object overlap processing), et interfaciem "Heads-Up Display" (HUD) sustinet. Omnis logica reddendi per prospectus efficitur. Plures lusores simul ludo coniungi possunt, et status eorum per tabulas et prospectus synchronizatur.
Ex parte usoris, cliens incipitur, qui circiter 150 lineas codicis Pythonici continet. Opus clientis ad informationem de ictibus clavium transmittendam et imagines ad terminalem exhibendas reducitur. Exitus per interrogationes SELECT periodicas ad visum "screen" in DBMS ordinatur, quae imaginem linea per lineam dynamiciter format (unaquaeque linea exitus in responsione ad interrogationem SELECT lineae in screen respondet). Informatio de ictibus clavium et novis lusoribus additis per interrogationes INSERT perficitur.
Source: opennet.ru
