• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Tutorial Fixy

Status
Not open for further replies.
No no ladnie ale po co ? ci co ogarniają mają już to zabezpieczone a ci nie ogary powinni nie brać się za otsa :_) . Jest jeszcze kilka innych bugów np : Debugowanie graczy (gracz który chce zdebugować musi posiadać szybki internet i szybko sie obracać za pomocą bota , większość graczy na ekranie dostaje debuga , u mnie zabezpieczyłem to , gdy gracz się bardzo szybko obraca przekraczając granice zwykłego obracania po prostu odejmuje mu hp aż na bocie pada ) także można zrobić mass kicki a nawet crasha za pomocą bugu z drzwiami lvl . Przechodząc przez drzwi lvl gracz staje na drzwiach i je zasypuje botem oraz bardzo szybko się kręci , u mnie zrobiłem tak że na lvl drzwiach nie da się stanąć tylko teleportuje za drzwi :)
 
Last edited:
No no ladnie ale po co ? ci co ogarniają mają już to zabezpieczone a ci nie ogary powinni nie brać się za otsa :_) . Jest jeszcze kilka innych bugów np : Debugowanie graczy (gracz który chce zdebugować musi posiadać szybki internet i szybko sie obracać za pomocą bota , większość graczy na ekranie dostaje debuga , u mnie zabezpieczyłem to , gdy gracz się bardzo szybko obraca przekraczając granice zwykłego obracania po prostu odejmuje mu hp aż na bocie pada ) także można zrobić mass kicki a nawet crasha za pomocą bugu z drzwiami lvl . Przechodząc przez drzwi lvl gracz staje na drzwiach i je zasypuje botem oraz bardzo szybko się kręci , u mnie zrobiłem tak że na lvl drzwiach nie da się stanąć tylko teleportuje za drzwi :)

Wes czlowieku daj mi kilka otsów które naprawde stoją bez problemu oprocz tych hexana, ambera, telania co naprawde sa ok. Kazde inne gówno leci jak sie komu podoba, a bug z drzwiami niby naprawiłes ale troche zepsułeś, w pvp naprzyklad ktos by stanal na drzwiach i jest zablokowane a tak juz trzeba wiecej osob zeby zblokować drzwi... +/-
 
Drakos nic nowego oprócz debugowania poprzez szybkie obracanie.
 
Prosty, nietestowany skrypt, zakładam że wpis do creaturescripts.xml i login.lua każdy umie dodać. Jeżeli ktoś wykonuje więcej niż 5 obrotów na sekundę, to po tych pięciu obrotach straci 25% całego hp. Po odebraniu hp obroty są naliczane od nowa:

Lua:
function onDirection(cid, old, current)
	local storage = 123456
	local triesStorage = 123457
	local set = 0
	
	if (exhaustion.check(cid, storage)) then
		local tries = getCreatureStorage(cid, triesStorage)
		
		if (tries >= 5) then
			doCreatureAddHealth(cid, -(getCreatureMaxHealth(cid) * 0.25))
		else
			set = tries + 1
		end
	end
	
	doCreatureSetStorage(cid, triesStorage, set)
	exhaustion.make(cid, storage, 1)
	return true
end
 
Last edited:
Cykotitan
This MyISAM table-level locking. If the table `table` INSERT goes that long to perform, all other inquiries reaching for that table must wait until the query is
end. In practice, if an increasing number of concurrent transactions modifying the data in one table, MyISAM does not give advice. InnoDB uses record-level locking enables simultaneous operation of more queries modifying data. This feature has always been one of the main reasons for abandoning the MyISAM and InnoDB used.

For SELECT queries commonly claimed that MyISAM is faster. This is not so obvious. InnoDB has a specific trait, which in some cases significantly accelerates SELECTów - clustered indexes. The general idea of the index is that instead of the browse table for records that meet the conditions, viewing a sorted index - it is information collected, the physical record is needed. Records are read and displayed. There are at least two disk operations - reading the index and data. Clustered indexes are characterized by the fact that the data is stored within the index. With hours to save a read operation - read index is combined with reading the data you need. So much for theory. In practice, sometimes differently, but in some situations the use of clustered indexes can speed up a lot of action.

Another difference between these engines is the use of memory. MyISAM caches only the indexes - the size of this buffer determines the variable 'key_buffer'. Data are not kept in memory, at least not at the level of MySQL. They are used to the standard disk cache mechanism used in the operating system. In the case of MySQL InnoDB supports caching of all data - the size of this buffer determines the variable 'innodb_buffer_pool_size'. The difference is significant that the reference to the system cache is more expensive than recourse to the buffers within the same MySQL.

Free data recovery from backup - MyISAM looking historically was much faster when it comes to the creation of tables from the discharges. Set dump.sql mysqldump + cat | mysql database is usually faster to operate on the MyISAM engine. MySQL recreates the indexes in two ways - through sorting (faster) and using the cache index (cache key - slower). In MySQL 5.0 and 5.1 of InnoDB can not use the faster algorithm, so that recovery from backup is significantly slower, especially when the amount is tens of GB of data. This problem was solved by programmers Innobase, and the solution was also used by developers Percony. At this point, and the InnoDB plugin XtraDB may also benefit from the rapid development of indexes. This applies to the so-called secondary indexes - index root, on the grounds that it is clustered, it must be generated by copying the data, rather than sorting.

MyISAM in some situations it is faster in terms of operations on data modifications. Of course, it happens mainly when the number of tables is large enough that the table-level locking is not a significant limitation. InnoDB engine is transactional, ensuring data integrity. Meeting these requirements involves considerable overhead, which translates to lower engine performance. However, you can change this - if the data applications do not need to preserve the integrity of the data (and only in such situations, it makes sense to compare the MyISAM, which does not maintain integrity at all), can relieve part of the requirements. This is done with variable innodb_flush_logs_at_trx_commit. Change it to less secure settings (eg, it is possible to waste one second of transactions in the event of physical server crashed), may even result in a tenfold increase in performance
 
Prosty, nietestowany skrypt, zakładam że wpis do creaturescripts.xml i login.lua każdy umie dodać. Jeżeli ktoś wykonuje więcej niż 5 obrotów na sekundę, to po tych pięciu obrotach straci 25% całego hp. Po odebraniu hp obroty są naliczane od nowa:

Lua:
function onDirection(cid, old, current)
	local storage = 123456
	local triesStorage = 123457
	local set = 0
	
	if (exhaustion.check(cid, storage)) then
		local tries = getCreatureStorage(cid, triesStorage)
		
		if (tries >= 5) then
			doCreatureAddHealth(cid, -(getCreatureMaxHealth(cid) * 0.25))
		else
			set = tries + 1
		end
	end
	
	doCreatureSetStorage(cid, triesStorage, set)
	exhaustion.make(cid, storage, 1)
	return true
end

Nie znam się na skryptach, ale czy nie jest możliwe zrobić blokadę szybkiego obracania się, a nie, że skrypt zabiera HP?
 
Skrypt udostępniony na forum przez użytkownika CyberM

PHP:
local exhaust = {
    storage = 2152,
    seconds = 1
}
 
function onDirection(cid, old, current)
    if isPlayer(cid) then 
        if current ~= old and exhaustion.check(cid, exhaust.storage) then
            doPlayerSendCancel(cid, 'Don\'t saturate the server making flood.')
            return false
        else
            exhaustion.set(cid, exhaust.storage, exhaust.seconds)
        end
    end
    return true
end
 
Last edited:
Owszem to nie jest mój skrypt, jest kogoś z OtLandu nie pamiętam kogo dlatego nie napisałem. Pod 8.6 3884 działa prawidłowo.

A co do zmiany która tworzyła exhausted na kupowanie przedmiotów u npc to działa ale tylko przy kupowaniu przez trade ale dalej można spamować "buy bow yes" i leci xxx itemów pod gracza, po zmianie na ignoreCap = false nadal.
 
Last edited:
Zapoznaj się ze strukturą ots a dopiero potem twórz tematy na forum.

Możesz dodać je go globalevents tylko nie wiem jak do tego doszedłeś żeby je dodać właśnie tam.
 
Well, wszystko fajnie, tyle że dlaczego by nie rozwalać OTS od strony gracza? Kilka dni temu napisałem na forum pomysł z autoupdate klienta, gdzie przy updacie klient bez problemu mógłby zablokować dane ip w hosts a co za tym idzie mozna wykrzaczyć większość serwerów. Nie mówie już o innych rzeczach które można zrobić z takim bajerem ale są one naprawde potężne :p.
Kod do takiego update mam już w połowie skończony, jeżeli znajde czas i pieniądze to dokończę go i prowdopodobnie opublikuje (zrobie taki dobry uczynek dla custom serwerów).
Co do całej walki, jeżeli klient flashowy będizie niemożliwy do shackowania w co szczerze watpie, era OTS skończy się a w raz z nią cała walka.
 
Well, wszystko fajnie, tyle że dlaczego by nie rozwalać OTS od strony gracza? Kilka dni temu napisałem na forum pomysł z autoupdate klienta, gdzie przy updacie klient bez problemu mógłby zablokować dane ip w hosts a co za tym idzie mozna wykrzaczyć większość serwerów. Nie mówie już o innych rzeczach które można zrobić z takim bajerem ale są one naprawde potężne :p.
Kod do takiego update mam już w połowie skończony, jeżeli znajde czas i pieniądze to dokończę go i prowdopodobnie opublikuje (zrobie taki dobry uczynek dla custom serwerów).
Co do całej walki, jeżeli klient flashowy będizie niemożliwy do shackowania w co szczerze watpie, era OTS skończy się a w raz z nią cała walka.
Uczeń sasira, który przewyższył mistrza!
 
chciałbym zeby era otsów sie skonczyła ciekawe co by zrobili ci pro gracze z otsów teamy itp
 
Status
Not open for further replies.
Back
Top