Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Looks wont update, any ideas?
http://i.imgur.com/Vs4hgEy.png
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
you need to add a FigureDataComoser into your emulator and dont ask me for it because Im not running the same revision as any hotel asfar as im aware
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Hello I got a problem when I open my chatlog I see Overflow :/
Any ideas ? :(
Thank you
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Quote:
Originally Posted by
Romuald Buisson
Hello I got a problem when I open my chatlog I see Overflow :/
Any ideas ? :(
Thank you
Run this query and see if it works:
TRUNCATE table chatlogs;
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Wonderful release, I also took some time to fix the talents tracker :)!
http://s32.postimg.org/usbm1s3eb/talents.png
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Quote:
Originally Posted by
EvilCoder
Maybe you could share it with us? :)
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Warning!
There's a way to change all furni/users in a room into a Gnome with Tanji.
The furni which changed in gnomes in `items` table are gone, and the Gnomes (pets @ Sulakore) are inserted in the database.
I guess a check need to be added, like item id corresponds to owner id, but didn't found out where yet.
http://i.imgur.com/kEsvU4t.png
Oh, and you can send unlimited text messages in rooms. @Sledmore ?
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Thanks! Spoiler :
Quote:
Originally Posted by
EvilCoder
Yes and you want to be famous with +1 post.
- - - Updated - - -
EventHandler:
Code:
class GetTalentTrackEvent : IPacketEvent
{
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
string Type = Packet.PopString();
List<Talent> Levels = PlusEnvironment.GetGame().GetTalentTrackManager().GetTalents(Type, -1);
Session.SendMessage(new TalentTrackComposer(Levels, Type, Session));
}
}
EventComposer:
Code:
class TalentTrackComposer : ServerPacket
{
public TalentTrackComposer(List<Talent> list1, string Type, GameClient Session)
: base(ServerPacketHeader.TalentTrackMessageComposer)
{
int level = -1;
base.Write(Type);
base.Write(list1.Count);
foreach (Talent talent in list1)
{
base.Write(talent.Level);
base.Write(((level == -1) ? 1 : 0));
List<Talent> list2 = PlusEnvironment.GetGame().GetTalentTrackManager().GetTalents(Type, talent.Id);
base.Write(list2.Count);
foreach (Talent talent2 in list2)
{
if (talent2.GetAchievement() == null)
{
throw new NullReferenceException($"The following talent achievement can't be found: {talent2.AchievementGroup}");
}
int num2 = ((level != -1) && (level < talent2.Level)) ? 0 : ((Session.GetHabbo().GetAchievementData(talent2.AchievementGroup) == null) ? 1 : ((Session.GetHabbo().GetAchievementData(talent2.AchievementGroup).Level >= talent2.AchievementLevel) ? 2 : 1));
base.Write(talent2.GetAchievement().Id);
base.Write(0);
base.Write($"{talent2.AchievementGroup}{talent2.AchievementLevel}");
base.Write(num2);
base.Write((Session.GetHabbo().GetAchievementData(talent2.AchievementGroup) != null) ? Session.GetHabbo().GetAchievementData(talent2.AchievementGroup).Progress : 0);
base.Write((talent2.GetAchievement() == null) ? 0 : talent2.GetAchievement().Levels[talent2.AchievementLevel].Requirement);
if ((num2 != 2) && (level == -1))
{
level = talent2.Level;
}
}
if ((talent.Type == "helper") && (talent.Level == 6))
{
base.Write((int)1);
base.Write("JUDGE_CHAT_REVIEWS");
base.Write((int)0);
}
else if ((talent.Type == "helper") && (talent.Level == 4))
{
base.Write((int)2);
base.Write("GIVE_GUIDE_TOURS");
base.Write("USE_GUIDE_TOOL");
base.Write((int)0);
}
else if ((talent.Type == "citizenship") && (talent.Level == 4))
{
base.Write((int)0);
base.Write((int)2);
base.Write("HABBO_CLUB_VIP_1_MONTH");
base.Write((int)0x1f);
base.Write(talent.Prize);
base.Write((uint)0);
}
else
{
base.Write((int)0);
base.Write((int)0);
}
}
}
}
MySQL
Code:
CREATE TABLE IF NOT EXISTS `achievements_talents` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`type` enum('citizenship','status','helper') NOT NULL DEFAULT 'citizenship',
`parent_category` int(11) NOT NULL DEFAULT '-1',
`level` int(11) NOT NULL,
`order_num` int(11) NOT NULL,
`achievement_group` varchar(255) NOT NULL DEFAULT 'ACH_',
`achievement_level` int(11) NOT NULL DEFAULT '1',
`prize` varchar(255) NOT NULL DEFAULT 'A1 KUMIANKKA',
`prize_baseitem` int(11) unsigned NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=77 ;
--
-- Gegevens worden uitgevoerd voor tabel `achievements_talents`
--
INSERT INTO `achievements_talents` (`id`, `type`, `parent_category`, `level`, `order_num`, `achievement_group`, `achievement_level`, `prize`, `prize_baseitem`) VALUES
(1, 'citizenship', -1, 0, 1, '', 1, 'A1 KUMIANKKA', 158),
(2, 'citizenship', 1, 0, 2, 'ACH_SafetyQuizGraduate', 1, 'A1 KUMIANKKA', 158),
(3, 'citizenship', 5, 1, 3, 'ACH_RoomEntry', 1, 'A1 KUMIANKKA', 158),
(4, 'citizenship', 5, 1, 4, 'ACH_RespectGiven', 1, 'A1 KUMIANKKA', 158),
(5, 'citizenship', -1, 1, 2, '', 1, 'A1 KUMIANKKA', 158),
(6, 'citizenship', 5, 1, 5, 'ACH_AvatarLooks', 1, 'A1 KUMIANKKA', 158),
(7, 'citizenship', 5, 1, 6, 'ACH_AllTimeHotelPresence', 1, 'A1 KUMIANKKA', 158),
(8, 'citizenship', -1, 2, 8, '', 1, 'A1 KUMIANKKA', 158),
(9, 'citizenship', 8, 2, 9, 'ACH_RoomEntry', 2, 'A1 KUMIANKKA', 158),
(10, 'citizenship', 8, 2, 10, 'ACH_RespectGiven', 2, 'A1 KUMIANKKA', 158),
(11, 'citizenship', 8, 2, 11, 'ACH_RespectEarned', 2, 'A1 KUMIANKKA', 158),
(12, 'citizenship', 8, 2, 12, 'ACH_AllTimeHotelPresence', 2, 'A1 KUMIANKKA', 158),
(13, 'citizenship', 8, 2, 13, 'ACH_RegistrationDuration', 1, 'A1 KUMIANKKA', 158),
(14, 'citizenship', 8, 2, 14, 'ACH_Motto', 1, 'A1 KUMIANKKA', 158),
(15, 'citizenship', 8, 2, 15, 'ACH_PetRespectGiver', 3, 'A1 KUMIANKKA', 158),
(16, 'citizenship', -1, 3, 16, '', 0, 'A1 KUMIANKKA', 158),
(17, 'citizenship', 16, 3, 17, 'ACH_RoomEntry', 4, 'A1 KUMIANKKA', 158),
(18, 'citizenship', 16, 3, 18, 'ACH_RegistrationDuration', 2, 'A1 KUMIANKKA', 158),
(19, 'citizenship', 16, 3, 19, 'ACH_RespectEarned', 3, 'A1 KUMIANKKA', 158),
(20, 'citizenship', 16, 3, 20, 'ACH_BattleBallPlayer', 2, 'A1 KUMIANKKA', 158),
(21, 'citizenship', 16, 3, 21, 'ACH_BattleBallWinner', 1, 'A1 KUMIANKKA', 158),
(22, 'citizenship', 16, 3, 22, 'ACH_AllTimeHotelPresence', 4, 'A1 KUMIANKKA', 158),
(23, 'citizenship', -1, 4, 23, '', 1, 'A1 KUMIANKKA', 158),
(24, 'citizenship', 23, 4, 24, 'ACH_Citizenship', 1, 'A1 KUMIANKKA', 158),
(25, 'citizenship', 23, 4, 25, 'ACH_PetRespectGiver', 4, 'A1 KUMIANKKA', 158),
(26, 'citizenship', 23, 4, 26, 'ACH_BattleBallPlayer', 4, 'A1 KUMIANKKA', 158),
(27, 'citizenship', 23, 4, 27, 'ACH_RegistrationDuration', 3, 'A1 KUMIANKKA', 158),
(28, 'citizenship', 23, 4, 28, 'ACH_AllTimeHotelPresence', 6, 'A1 KUMIANKKA', 158),
(29, 'citizenship', 23, 4, 29, 'ACH_Login', 5, 'A1 KUMIANKKA', 158),
(30, 'helper', -1, 0, 0, '', 1, 'A1 KUMIANKKA', 158),
(31, 'helper', 30, 0, 2, 'ACH_Citizenship', 1, '', 158),
(32, 'helper', 35, 1, 2, 'ACH_RespectEarned', 2, '', 158),
(33, 'helper', 35, 1, 3, 'ACH_RespectGiven', 3, '', 158),
(34, 'helper', 35, 1, 4, 'ACH_PetRespectGiver', 3, '', 158),
(35, 'helper', -1, 1, 1, '', 1, 'A1 KUMIANKKA', 158),
(36, 'helper', 38, 2, 1, 'ACH_GuideFeedbackGiver', 2, '', 158),
(37, 'helper', 38, 2, 2, 'ACH_GuideRequester', 2, '', 158),
(38, 'helper', -1, 2, 2, '', 1, 'A1 KUMIANKKA', 158),
(42, 'helper', 45, 3, 1, 'ACH_RegistrationDuration', 3, '', 158),
(43, 'helper', 45, 3, 2, 'ACH_AllTimeHotelPresence', 5, '', 158),
(44, 'helper', 45, 3, 3, 'ACH_HabboWayGraduate', 1, '', 158),
(45, 'helper', -1, 3, 3, '', 1, 'A1 KUMIANKKA', 158),
(46, 'helper', 50, 4, 1, 'ACH_GuideEnrollmentLifetime', 2, '', 0),
(47, 'helper', 50, 4, 2, 'ACH_GuideOnDutyPresence', 5, '', 0),
(48, 'helper', 50, 4, 3, 'ACH_GuideRecommendation', 3, '', 0),
(49, 'helper', 50, 4, 4, 'ACH_GuideRequestHandler', 5, '', 0),
(50, 'helper', -1, 4, 4, '', 1, '', 0),
(51, 'helper', 55, 5, 1, 'ACH_GuideEnrollmentLifetime', 4, '', 0),
(52, 'helper', 55, 5, 2, 'ACH_GuideOnDutyPresence', 7, '', 0),
(53, 'helper', 55, 5, 3, 'ACH_GuideRecommendation', 5, '', 0),
(54, 'helper', 55, 5, 4, 'ACH_GuideRequestHandler', 7, '', 0),
(55, 'helper', -1, 5, 6, '', 1, 'A1 KUMIANKKA', 158),
(56, 'helper', 61, 6, 1, 'ACH_GuideEnrollmentLifetime', 5, '', 158),
(57, 'helper', 61, 6, 2, 'ACH_GuideOnDutyPresence', 8, '', 158),
(58, 'helper', 61, 6, 3, 'ACH_GuideRecommendation', 6, '', 158),
(59, 'helper', 61, 6, 4, 'ACH_GuideRequestHandler', 9, '', 158),
(60, 'helper', 61, 6, 5, 'ACH_GuideChatReviewer', 5, '', 158),
(61, 'helper', -1, 6, 7, '', 1, '', 0),
(70, 'helper', 75, 7, 1, 'ACH_GuideEnrollmentLifetime', 6, '', 0),
(71, 'helper', 75, 7, 2, 'ACH_GuideOnDutyPresence', 9, '', 0),
(72, 'helper', 75, 7, 3, 'ACH_GuideRecommendation', 7, '', 0),
(73, 'helper', 75, 7, 4, 'ACH_GuideRequestHandler', 10, '', 0),
(74, 'helper', 75, 7, 5, 'ACH_GuideChatReviewer', 8, '', 0),
(75, 'helper', -1, 7, 8, '', 1, '', 0),
(76, 'helper', -1, 8, 9, '', 1, '', 0);
Quote:
Originally Posted by
EvilCoder
- - - Updated - - -
Please replace base.Write with either:
base.WriteInteger
base.WriteString
base.WriteDouble
etc....
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Spoiler :
Quote:
Originally Posted by
TehMud
Warning!
There's a way to change all furni/users in a room into a Gnome with Tanji.
The furni which changed in gnomes in `items` table are gone, and the Gnomes (pets @ Sulakore) are inserted in the database.
I guess a check need to be added, like item id corresponds to owner id, but didn't found out where yet.
http://i.imgur.com/kEsvU4t.png
Oh, and you can send unlimited text messages in rooms. @
Sledmore ?
HAHAHAHAHAAHA oke I like this "exploit"
But here is a fix just looked inside the code and saw it in a sec.
It is pretty simple there is no check in the Checkgnomename packet of the item that you send is really a gnome furni (and of you have rights)
so go to "CheckGnomeNameEvent.cs" and replace
to:
Code:
if (Room == null || Room.CheckRights(Session)) // Added a righs check:
Replace also in this file this if:
Code:
if (Item == null || Item.Data == null)
To:
Code:
if (Item == null || Item.Data == null || Item.Data.InteractionType != InteractionType.GNOME_BOX) // added check of it is a gnome box (think this packet is for thegnome boxes)
Btw I din't check it because I'm not using this emulator but I'm sure that this will fix it.
-- edit --
(BTW I think that there are more "exploits" like this because its just so easy to make a mistakte like this)
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Quote:
Originally Posted by
TehMud
Warning!
There's a way to change all furni/users in a room into a Gnome with Tanji.
The furni which changed in gnomes in `items` table are gone, and the Gnomes (pets @ Sulakore) are inserted in the database.
I guess a check need to be added, like item id corresponds to owner id, but didn't found out where yet.
http://i.imgur.com/kEsvU4t.png
Oh, and you can send unlimited text messages in rooms. @
Sledmore ?
shouldnt had to give this method out for anyone. regret it now lol (i may be the first to found this)
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Quote:
Originally Posted by
EvilCoder
Yes and you want to be famous with +1 post.
- - - Updated - - -
........
- - - Updated - - -
Please replace base.Write with either:
base.WriteInteger
base.WriteString
base.WriteDouble
etc....
Thanks for sharing! But I think the code is not complete, since methods like GetTalent() etc. are not defined in standard plus emulator edition.
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Quote:
Originally Posted by
Seat Ibiza
Thanks for sharing! But I think the code is not complete, since methods like GetTalent() etc. are not defined in standard plus emulator edition.
Shame, guess you need to figure that part out yourself :P!
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
i'm new in habbo hotel, someone can help me to setup a new server with these files? Please give me some guide, thanks
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Quote:
Originally Posted by
hoalong1120
i'm new in habbo hotel, someone can help me to setup a new server with these files? Please give me some guide, thanks
i made a tutorial how to setup a plus emu hotel here http://forum.ragezone.com/f377 i hope it helps.
Re: PlusEMU - Habboon Edit - PRODUCTION-201601012205-226667486
Ok so, I've seen many asking how to fix the Avatar look update on the UI bar. So here it is.
add this to ServerPacketHeader.cs
PHP Code:
public const int AvatarAspectUpdateMessageComposer = 1208 ;
then in Plus.Communication.Packets.Outgoing.Rooms.Engine create a new file called AvatarAspectUpdateMessageComposer and add this.
PHP Code:
using System ;
using System . Linq ;
using System . Text ;
using Plus . HabboHotel . Rooms ;
using Plus . HabboHotel . GameClients ;
namespace Plus . Communication . Packets . Outgoing . Rooms . Engine
{
class AvatarAspectUpdateMessageComposer : ServerPacket
{
public AvatarAspectUpdateMessageComposer ( string Figure , string Gender )
: base ( ServerPacketHeader . AvatarAspectUpdateMessageComposer )
{
base . WriteString ( Figure );
base . WriteString ( Gender );
}
}
}
then goto UpdateFigureDataEvent and add this
PHP Code:
Session . SendMessage (new AvatarAspectUpdateMessageComposer ( Look , Gender ));
below
PHP Code:
PlusEnvironment . GetGame (). GetAchievementManager (). ProgressAchievement ( Session , "ACH_AvatarLooks" , 1 );
NOTE: Use AvatarAspectUpdateMessageComposer = 3283; for PRODUCTION-201605102204-92524753