GMC Bulgaria

Здравейте ( Вход | Регистрация )

 
Reply to this topicStart new topic
Map Editor
term1nat0r
коментар 21:32:51, 04-April-2011, Monday
Коментар #1


Редовен потребител
***

Група: Потребител
Коментари: 102
Регистриран: 23.08.09
Град: Силистра.
Потребител № 1490



Значи незнам дали тази тема е за тук, но колкото и да опитвам немога да си направя Map Editor.
Играта ми е RPG в Map Editora да мога да слагам герой, магазин, дървета, да правя room height i room weight, да сменям Backgrounda на rooma и т.н.
Да бъде все едно като в Game Maker слагаш обект там обект там, самоче искам като игра.
Файла да може да се сейфа като някакъв формат, който ще чете оригиналната игра и това е.
Моля ако знаете как помогнете.


--------------------
Влезте в новият ми сайт : http://term1nat0r.netne.net/
Go to the top of the page
 
+Quote Post
P.A.S._BG
коментар 14:27:56, 05-April-2011, Tuesday
Коментар #2


Потребител
**

Група: Потребител
Коментари: 88
Регистриран: 29.05.08
Град: Montana
Потребител № 1014



Много добър въпрос! И на мене ми се въртеха такива въпроси през миналите месеци. За съжаление идеите в главата ми са само теории и не са изпробвани. Залавям се веднага да изпробвам, ако стане - качвам да го видиш.


--------------------
Go to the top of the page
 
+Quote Post
term1nat0r
коментар 15:35:55, 05-April-2011, Tuesday
Коментар #3


Редовен потребител
***

Група: Потребител
Коментари: 102
Регистриран: 23.08.09
Град: Силистра.
Потребител № 1490



Аз имам идея как да стане, но нещо не ми се получава, но ще опитам пак да го направя. Ако стане ще кажа.


--------------------
Влезте в новият ми сайт : http://term1nat0r.netne.net/
Go to the top of the page
 
+Quote Post
яверт
коментар 16:53:31, 05-April-2011, Tuesday
Коментар #4


Засмян тъпоъгълник :D
Икона на група

Група: Администратор
Коментари: 1790
Регистриран: 21.07.08
Град: Това е място, населено с много хора. FPS: 60
Потребител № 1116



За редактор в общи линии ти трябват бази от данни, в които да се съхранява информацията за поставените обекти.
Тези бази от дании могат да бъдат под различна форма, примерно като масиви или обекти(не го препоръчвам) или ds_* функции.
Да кажем, че използваш ds_list_* функциите. За всеки обект ти трябва да знаеш къде се намира - неговите координати х и у. Следователно се нуждаеш от два листа obektx и obekty.
Да кажем, че си ги създал и вече си поставил няколко обекта. Листовете биха могли да имат следния вид:
Цитат
obektx: 30 42 15 60
obekty: 13 22 40 60

Тука трябва да се има впредвид едно важно нещо - стойностите си отговарят по двойки - първите две стойности (30 и 13) са за един и същи обект, вторите също и така има четири обекта с координати 30;13 42;22 15;40 60;60 - това е един лесен начин за логическо свързване на стойностите от двата листа.
Но тук идва един проблем: кой обект какъв е? Играчът, враг, стена? Позицията сама по себе си не е достатъчна за обозначаване на това. За това се налага трети лист(или масив), който да обозначава видът на обекта:
Цитат
obektx: 30 42 15 60
obekty: 13 22 40 60
obektvid: igra4 vrag stena stena

Това вече е необходимият минимум. Обаче пак изниква проблем - видът на обекта ако се съхранява под формата на низ заема много повече място, отколкото ако е като число(това става по-осезаемо, когато се налага да се запази картата с по-малък размер) и може да се сбърка - дали беше igra4 или geroi, zombi или vrag. Как се решава този проблем? Сравнително просто - вместо имена на обекти се използват индекси на обекти. 0 във базата данни obektvid ще отговаря на играчът, 1 на врагът, 2 на стената и т.н. За да се укаже това се нуждаем от още една база данни:
Цитат
obektime: igra4 vrag stena orajie npc
obektx: 30 42 15 60
obekty: 13 22 40 60
obektvid: 0 1 2 2

Оbektime не е свързан с останалите три листа - той указва името на даден обект. Понеже "постави 0" или "постави 2" не ни говорят много, се използва този лист obektime, за да се заменят индексите на обектите с имената им("постави играч", "постави стена") - това е изцяло за потребителския интерфейс и не се запазва в картите.
Ако всеки обект има и някаква начална стойност, която трябва да бъде зададена в левъледитора, за това трябва поредният лист
Цитат
obektime: igra4 vrag stena orajie npc
obektx: 30 42 15 60
obekty: 13 22 40 60
obektvid: 0 1 2 2
obektzdrave: 100 35 50 50
obektposoka: 0 45 90 90


Останалата работа е свързана с функционалност на едитора за създаване и унищожаване на обекти, преместването и редактирането им.
Потребителският интерфейс също трябва да е добър, за да е удобен едиторът за използване.
Записването и зареждането се свежда единствено до записване и четене на данните от файл. Не е задължително да е текстов, може да е с какво си искаш разширение.
Първият ред може да обозначава първият лист, вторият ред - вторият и т.н.
Код
30 42 15 60
13 22 40 60
0 1 2 2
100 35 50 50
0 45 90 90


--------------------
Цитат
Пешо:
4:53:46
Я недейти са карайти тука че да ни ва зашливйъ
Go to the top of the page
 
+Quote Post
term1nat0r
коментар 17:01:27, 05-April-2011, Tuesday
Коментар #5


Редовен потребител
***

Група: Потребител
Коментари: 102
Регистриран: 23.08.09
Град: Силистра.
Потребител № 1490



Да много благодаря за този отговор ще се опитам да го направя и ако стане ще пиша .


--------------------
Влезте в новият ми сайт : http://term1nat0r.netne.net/
Go to the top of the page
 
+Quote Post
P.A.S._BG
коментар 22:20:01, 05-April-2011, Tuesday
Коментар #6


Потребител
**

Група: Потребител
Коментари: 88
Регистриран: 29.05.08
Град: Montana
Потребител № 1014



rip.gif Както винаги очакванията са 5 пъти по-прости. Все пак успех да го направа с неколко пъти преправяне и дано нема буби в едитора biggrin.gif. Абе на ония фропесор горе му се чуда кви са тия неща и висши математики дека ми реди, ама ако му разбираш, тогава си ок с мене. Все пак хвърли окото си тука http://dox.bg/files/dw?a=56efb30b60 и да не си го забравиш!


--------------------
Go to the top of the page
 
+Quote Post
яверт
коментар 10:43:17, 06-April-2011, Wednesday
Коментар #7


Засмян тъпоъгълник :D
Икона на група

Група: Администратор
Коментари: 1790
Регистриран: 21.07.08
Град: Това е място, населено с много хора. FPS: 60
Потребител № 1116



Чак пък висши математики не - това е един прост начин да си направиш левъл едитор. Даже и да не си го разбрал, съм 99% сигурен, че използваш начин, подобен на описания, защото това си е основата smile.gif .


--------------------
Цитат
Пешо:
4:53:46
Я недейти са карайти тука че да ни ва зашливйъ
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 потребител(и) четат тази тема (1 гости и 0 скрити)
0 Потребител(и):

 



Олекотена версия Час: 01:55:51, 19.05.24